مزامنة المنتجات
يحتفظ WCPOS بنسخة محلية من منتجاتك على كل جهاز، فيصبح تصفح الكتالوج والبحث فيه فوريًا ويستمر العمل دون اتصال. يشرح هذا الدليل كيف تصل المنتجات إلى الجهاز وكيف تبقى محدّثة.
يقدّم الإصدار 1.10.0 محرك مزامنة جديدًا. إذا كانت نقطة البيع لديك أقدم من الإصدار 1.10.0، فانظر ما الذي تغيّر في الإصدار 1.10.0 أدناه.
كيف تصل المنتجات إلى الجهاز
- تعمل بذرة الكتالوج في الخلفية. منذ أول تشغيل، تنزّل نقطة البيع كتالوجك على دفعات صغيرة وفق جدول زمني، دون أي إجراء منك. ويمكنك البدء بالبيع بمجرد وصول أول المنتجات — فالدفع لا ينتظر اكتمال التنزيل.
- ما تنظر إليه يُنزَّل عند الطلب. البحث أو التصفية حسب الفئة أو مسح باركود يجلب المنتجات المطابقة مباشرةً إذا لم تكن محلية بعد. ولم يعد البحث يسحب معه منتجات غير ذات صلة — بل يجلب ما طلبته.
- تصل التحديثات عبر فحص التغييرات. بعد أن يصبح المنتج محليًا، لا تعيد نقطة البيع تنزيله للتحقق مما إذا كان قد تغيّر. بل تستعلم عن سجل تغييرات خفيف (كل 60 ثانية في الإعداد المسبق الافتراضي) وتجلب ما تغيّر فعليًا فقط — ويردّ المتجر الخامل باستجابة واحدة شبه مجانية تعني «لا جديد».
ما حجم الدفعات؟
تطلب نقطة البيع افتراضيًا 50 منتجًا في المرة الواحدة. ولم يعد هذا ثابتًا محددًا — بل هو أحد مؤشّرين يضبطهما الإعداد المسبق للمزامنة في صحة المتجر → الأداء:
| الإعداد المسبق | فاصل الفحص | عدد السجلات لكل طلب |
|---|---|---|
| اقتصادي | 5 دقائق | 25 |
| متوازن (الافتراضي) | 60 ثانية | 50 |
| الزمن الفعلي | 10 ثوانٍ | 75 |
توجد الدفعات الصغيرة لحماية خادمك: فبناء الصفحات الكبيرة يستهلك وقتًا فعليًا من الخادم، وقد يبطئ واجهة المتجر أو يتجاوز حدود المعدل على الاستضافة المشتركة. اختر «اقتصادي» للاستضافة المتواضعة، و«الزمن الفعلي» للمتاجر متعددة نقاط البيع ذات الاستضافة القوية. انظر صحة المتجر للاطلاع على التفاصيل.
متابعة تقدّم التنزيل
افتح صحة المتجر → قاعدة البيانات لترى، لكل مجموعة، عدد السجلات الموجودة على هذا الجهاز مقابل الموجودة على خادمك، مع شريط تغطية. ورقم على الخادم هو إجمالي فعلي يبلّغ عنه الخادم — وبينما لا تزال نقطة البيع تتأكد منه، يعرض الصف جارٍ التحقق… بدلًا من تخمين.
شريط منتجات غير مكتمل يعني ببساطة أن البذرة لم تنتهِ بعد؛ وستستمر في الامتلاء في الخلفية. وإذا بدا أن منتجًا محددًا مفقود، فابحث عنه — فذلك يجلبه مباشرةً.
إذا بدت مجموعة ما متوقفة، فاستخدم مسح وإعادة تنزيل على صفها في صحة المتجر → قاعدة البيانات قبل اللجوء إلى إعادة التعيين الكاملة عبر مسح جميع البيانات المحلية.
ما الذي تغيّر في الإصدار 1.10.0
كانت الإصدارات السابقة تنزّل الكتالوج تدريجيًا من خلال الاستخدام: فكل عملية بحث أو تمرير كانت تسحب دفعة أخرى من المنتجات، وكان استعلام كامل يعمل كل 5 دقائق. وقد أُلغي هذا النموذج. في الإصدار 1.10.0:
- يمتلئ الكتالوج عبر بذرة خلفية مجدولة — ولا تحتاج إلى البحث أو التمرير لتنزيل المنتجات.
- يجلب البحث المنتجات المطابقة له، لا دفعة تالية اعتباطية.
- تعمل عمليات فحص التغييرات وفق فاصل الإعداد المسبق الذي تختاره (60 ثانية افتراضيًا) باستخدام طلبات شرطية، بدلًا من استعلام كامل ثابت كل 5 دقائق.
- تقدّم التنزيل مرئي لكل مجموعة في صحة المتجر → قاعدة البيانات.
يمكن للمطورين الاطلاع على الآلية الكاملة في كيف يعمل محرك المزامنة.
الأسئلة الشائعة
هل عليّ فعل أي شيء لتنزيل منتجاتي؟
لا. تنزّل بذرة الكتالوج منتجاتك في الخلفية تلقائيًا. ويجلب البحث أو التصفية منتجات محددة فورًا إذا لم تكن محلية بعد، لكن التصفح الاعتيادي ليس هو ما يُكمل التنزيل — بل البذرة العاملة في الخلفية.
ما مدى سرعة وصول تغييرات المنتجات إلى نقطة البيع؟
في الإعداد المسبق «متوازن» الافتراضي، تفحص نقطة البيع التغييرات كل 60 ثانية (وتُوزَّع أوقات الفحص عشوائيًا قليلًا حتى لا تصل عدة نقاط بيع إلى الخادم في اللحظة نفسها). ولا تُجلب إلا المنتجات المتغيّرة. وإذا احتاجت عدة نقاط بيع إلى رؤية تغييرات بعضها بشكل أسرع، فاستخدم الإعداد المسبق «الزمن الفعلي».
لا أرى جميع منتجاتي في نقطة البيع
هناك عدة احتمالات:
- قد لا تكون البذرة العاملة في الخلفية قد انتهت ببساطة — تحقّق من صف المنتجات في صحة المتجر → قاعدة البيانات.
- تخفي نقطة البيع العناصر غير المتوفرة في المخزون افتراضيًا. ويمكن تغيير ذلك في إعدادات عرض المنتجات.
- لا تدعم واجهة WooCommerce REST API إلا أنواع المنتجات القياسية (البسيط، والمتغير، والمجمّع، والخارجي). وقد لا تظهر أنواع المنتجات المخصصة في نقطة البيع.