VibeFox DPD Pickup for WooCommerce — المساعدة
المتطلبات
WordPress: 5.8 أو أحدث.
WooCommerce: 7.0 أو أحدث، مثبّت ومفعّل. لا تُفعَّل الإضافة بدونه.
PHP: 8.0 أو أحدث.
بيانات اعتماد DPD Baltic (ليتوانيا، لاتفيا، إستونيا): تأتي قائمة نقاط الاستلام من خدمة الويب الخاصة بـ DPD Baltic. تحتاج إلى اسم المستخدم وكلمة المرور الخاصين بواجهة API، وتصدرهما DPD لعملائها من الشركات. اطلبهما من مدير حسابك لدى DPD أو من خدمة عملاء DPD في بلدك. يعرض حساب واحد نقاط الاستلام في ليتوانيا ولاتفيا وإستونيا.
DPD Slovakia: بحث parcelshop العام لدى DPD Slovakia لا يتطلب بيانات اعتماد.
مفتاح ترخيص VibeFox: يُشترى من vibefox.net. يعمل المفتاح الواحد على نطاق واحد فقط.
التثبيت
1. في WordPress، انتقل إلى Plugins > Add New > Upload Plugin، واختر ملف ZIP الخاص بالإضافة، ثم انقر Install Now. يمكنك أيضًا رفع مجلد vfd_dpd_pickup إلى /wp-content/plugins/ عبر FTP.
2. انقر Activate.
3. افتح الإعدادات: WooCommerce > Settings > Shipping > VibeFox DPD Pickup، أو انقر Settings أسفل اسم الإضافة في صفحة Plugins.
4. أدخل مفتاح ترخيص VibeFox في كتلة الترخيص أعلى الصفحة، ثم انقر Activate.
5. اختر واجهة DPD API. بالنسبة إلى DPD ليتوانيا أو لاتفيا أو إستونيا، أدخل اسم المستخدم وكلمة المرور الخاصين بواجهة API. أدخل الأسعار لكل دولة ثم احفظ. انقر Refresh pickup points للتحقق من الاتصال (انظر الإعدادات).
6. أضف VibeFox DPD Pickup إلى مناطق الشحن في WooCommerce > Settings > Shipping > Shipping zones، أو فعّل Ignore shipping zones.
الإعدادات
جميع الإعدادات في صفحة واحدة: WooCommerce > Settings > Shipping > VibeFox DPD Pickup. وهي تنطبق على جميع مناطق الشحن. عند إضافة الطريقة إلى منطقة، تحتوي نافذة المنطقة على حقل واحد فقط:
Title (zone): اسم هذا الخيار في صفحة الدفع لهذه المنطقة. اتركه فارغًا لاستخدام Name العام.
تخبرك التحذيرات أعلى الإعدادات متى يكون اسم مستخدم DPD Baltic أو كلمة المرور فارغين، ومتى لا تكون هناك أسعار مضبوطة. في كل مرة تحفظ فيها الإعدادات يُمسح التخزين المؤقت لنقاط الاستلام.
عام
Enable/Disable: يفعّل الطريقة أو يعطّلها في جميع المناطق دفعة واحدة.
Name: اسم طريقة الشحن الذي يظهر في صفحة الدفع. الافتراضي: DPD Pickup Point.
Tax status: Taxable يضيف ضريبة WooCommerce إلى تكلفة الشحن، وNone لا يضيفها.
قائمة نقاط استلام DPD
تُحمَّل نقاط الاستلام من DPD وتُخزَّن مؤقتًا لمدة 24 ساعة.
DPD API: شركة DPD التي لديك حساب معها. تستخدم حسابات Baltic خدمة الويب في بلدها.
API username (Baltic): اسم مستخدم خدمة ويب DPD Baltic الخاصة بك. غير مطلوب لـ DPD Slovakia.
API password (Baltic): كلمة مرور خدمة ويب DPD Baltic الخاصة بك. غير مطلوبة لـ DPD Slovakia.
Pickup points: يمسح الزر Refresh pickup points التخزين المؤقت ويحمّل نقاط الاستلام من DPD الآن: ليتوانيا ولاتفيا وإستونيا عبر واجهة Baltic API، أو بحثًا تجريبيًا في براتيسلافا لـ DPD Slovakia. ويعرض النتيجة لكل دولة. احفظ الإعدادات أولًا.
الأسعار
أسعار الشحن ثابتة لكل دولة، بعملة المتجر. لا تُطلب أسعار DPD من واجهة API.
Country prices: سطر واحد لكل دولة: CC:price، مثل EE:3.50. تُقبل الفاصلة العشرية. الافتراضي: SK:3.50، LT:4.00، LV:4.00، EE:4.00.
Fallback cost: السعر للدول غير الموجودة في Country prices. الافتراضي: 5.00. اتركه فارغًا لعرض الطريقة في الدول المدرجة فقط.
Calculation type: Per order يحصّل السعر مرة واحدة. Per item (price x quantity) يضربه في عدد المنتجات في السلة.
Free shipping from: يكون الشحن مجانيًا عندما يبلغ المجموع الفرعي للطلب (بعد الكوبونات) هذا المبلغ. اتركه فارغًا لإيقافه.
التوفر
تُخفى الطريقة أيضًا عندما لا تعيد DPD أي نقاط استلام لعنوان العميل، أو عندما يتعذر الوصول إلى واجهة DPD API، لأنه لا يمكن تسليم الطلب دون نقطة استلام.
Min weight (kg): الحد الأدنى لوزن السلة. تُحوَّل أوزان المنتجات من وحدة الوزن في متجرك. الفارغ أو 0 يعني بلا حد.
Max weight (kg): السلال الأثقل لا ترى هذه الطريقة. الافتراضي: 31.5. 0 يعني بلا حد. تحقق من حدود الطرود لنقاط الاستلام والخزائن التابعة لـ DPD Pickup في بلدك.
Minimum subtotal: اعرض الطريقة فقط عندما يبلغ المجموع الفرعي للطلب هذا المبلغ على الأقل. اتركه فارغًا لعرضها دائمًا.
Excluded shipping classes: تُخفى الطريقة عندما تحتوي السلة على منتج من إحدى فئات الشحن هذه في WooCommerce.
Ignore shipping zones: اعرض الطريقة للدول المذكورة أدناه، حتى عندما لا تتضمنها منطقة شحن العميل. عند الإيقاف، تضيف الطريقة إلى مناطق الشحن كالمعتاد.
Countries: الدول المستهدفة لهذا الوضع. اتركه فارغًا لجميع الدول. يُستخدم فقط مع Ignore shipping zones.
محدد نقطة الاستلام
City order: يعرض المدن الكبرى أولًا (تالين وريغا وفيلنيوس وبراتيسلافا وغيرها). مفعّل افتراضيًا.
City list width: عرض قائمة المدن بصيغة CSS، مثل 100% أو 300px. الافتراضي: 100%.
Pickup point list width: عرض قائمة نقاط الاستلام بصيغة CSS، مثل 100% أو 400px. الافتراضي: 100%.
متقدم
Debug log: يسجّل طلبات API وخطوات الدفع في WooCommerce > Status > Logs، بالمصدر vfd-dpd-pickup. تُسجَّل أخطاء API دائمًا حتى عندما يكون هذا الخيار متوقفًا. لا تُسجَّل بيانات الاعتماد أبدًا.
Remove data on uninstall: عند التفعيل، يؤدي حذف الإضافة إلى إزالة إعداداتها وطرق المناطق. التعطيل لا يحذف الإعدادات أبدًا. نقطة الاستلام المحفوظة في الطلبات تبقى دائمًا.
كيف تعمل عند الدفع
عندما يُدخل العميل عنوان التوصيل، يطلب WooCommerce من الإضافة سعرًا. تتحقق الإضافة من وزن السلة والحد الأدنى للمجموع الفرعي وفئات الشحن المستثناة، وتأخذ سعر الدولة (أو تكلفة الاحتياط)، وتطبق الشحن المجاني إذا كان المجموع الفرعي كافيًا. ثم تحمّل نقاط استلام DPD لهذا العنوان. إذا لم تعد DPD أي نقطة، أو تعذر الاتصال بها، أو كانت بيانات اعتماد Baltic مفقودة، تُخفى الطريقة.
تُخزَّن قائمة نقاط الاستلام مؤقتًا لمدة 24 ساعة. يُتذكَّر الطلب الفاشل لمدة 5 دقائق، حتى لا يبطئ أي عطل في DPD الدفع أبدًا. مهلة انتظار API هي 15 ثانية.
تعمل الطريقة في الدفع الكلاسيكي وفي كتلتي Cart وCheckout. وهي متوافقة مع High-Performance Order Storage (HPOS) في WooCommerce.
لا تطلب الإضافة أسعار DPD، ولا تنشئ شحنات DPD، ولا تطبع ملصقات، ولا تنشئ بيانات تسليم، ولا تطلب استلامًا من مندوب، ولا تتتبع الطرود، ولا تعرض خريطة. الخدمات المدعومة فقط هي خدمة ويب DPD Baltic وبحث parcelshop لدى DPD Slovakia.
نقاط الاستلام
عندما يختار العميل DPD Pickup، تظهر قائمة المدن وقائمة نقاط الاستلام أسفل الطريقة. تكون مدينة عنوان العميل مختارة مسبقًا. مع DPD Slovakia، يُدخل العميل المدينة والرمز البريدي أولًا، ثم يرى النقاط القريبة. نقطة الاستلام إلزامية. يتحقق الخادم من أن النقطة تنتمي إلى دولة العميل وعنوانه، لذلك يُرفض أي اختيار مزوَّر أو قديم.
تُحفَظ النقطة المختارة في الطلب. وتظهر في شاشة الطلب أسفل عنوان الشحن، وفي صفحة الشكر، وفي My account > Orders، وفي رسائل البريد الإلكتروني للطلب (HTML ونص عادي) بعنوان DPD pickup point. الاسم المحفوظ في الطلب يأتي من DPD، وليس من المتصفح.
في شاشة الطلب، انقر Edit بجوار نقطة الاستلام، واختر مدينة ونقطة أخرى. تُتحقَّق النقطة من قائمة DPD لعنوان الطلب. ولتغيير النقطة، يلزم أن يحتوي الطلب على مدينة شحن ورمز بريدي.
مفتاح الترخيص
تعمل الإضافة بمفتاح ترخيص VibeFox من vibefox.net. تقع كتلة الترخيص أعلى WooCommerce > Settings > Shipping > VibeFox DPD Pickup. الصق المفتاح في License key وانقر Activate. تعرض الكتلة الحالة، مثل التاريخ الذي يبقى الترخيص فعالًا حتى نهايته، ونطاقك. استخدم Check now لإعادة التحقق من الحالة، وChange key لإدخال مفتاح آخر، وRemove key لإزالة المفتاح من هذا الموقع. يفتح الرابط Manage licenses and domains in your account حسابك على vibefox.net.
يعمل المفتاح الواحد على نطاق واحد فقط. إزالة المفتاح من موقع لا تحرر خانة النطاق. حرّرها من حسابك على vibefox.net.
بدون مفتاح فعّال، لا يظهر DPD Pickup للعملاء في صفحة الدفع. ما زال مديرو المتجر المسجّلون يرونه، مع الإشارة إليه بـ (unlicensed — visible to admins only)، حتى تتمكن من إعداد الإضافة واختبارها قبل شراء مفتاح. يظهر تذكير في صفحة Plugins وفي صفحات WooCommerce. الطلبات الحالية لا تتأثر.
عند انتهاء صلاحية الترخيص، تستمر الإضافة في العمل، لكن التحديثات والدعم تتطلب التجديد. تُعاد مراجعة الحالة تلقائيًا في الخلفية.
استكشاف الأخطاء وإصلاحها
لا يظهر DPD Pickup في الدفع: تحقق من أن الترخيص فعّال، وأن Enable/Disable مفعّل، وأن الطريقة مضافة إلى منطقة دولة العميل (أو أن Ignore shipping zones مفعّل والدولة مسموح بها). راجع التحذيرات أعلى صفحة الإعدادات وانقر Refresh pickup points. تحقق من حدود الوزن والمجموع الفرعي، وفئات الشحن المستثناة، وأن الدولة لها سعر (أو تكلفة احتياطية).
"Login failed" بعد Refresh pickup points: رفضت DPD بيانات اعتماد Baltic، لذلك لا يمكن تحميل أي نقطة استلام. تحقق من اسم المستخدم وكلمة المرور الخاصين بواجهة API لدى DPD.
DPD Slovakia لا يعرض نقاطًا: تظهر النقاط بعد أن يُدخل العميل المدينة والرمز البريدي. تعرض DPD النقاط الواقعة في نطاق 50 كم من هذا العنوان فقط.
معرفة السبب: فعّل Debug log. يُكتب كل قرار في WooCommerce > Status > Logs، بالمصدر vfd-dpd-pickup. تُسجَّل أخطاء API دائمًا. لا تُكتب أسماء المستخدمين وكلمات المرور الخاصة بواجهة API في السجل أبدًا.
كتلة الترخيص تعرض خطأً: اتبع الرسالة المعروضة في الكتلة. على سبيل المثال، إذا كان المفتاح مستخدمًا بالفعل على نطاق آخر، فحرّر خانة في حسابك على vibefox.net وانقر Check now. إذا تغير عنوان الموقع، فانقر Check now لتفعيل المفتاح للنطاق الجديد. إذا تعذر الوصول إلى خادم التراخيص، تستمر الإضافة بآخر حالة معروفة.
إلغاء التثبيت
تعطيل الإضافة يحتفظ بجميع الإعدادات، ولا يمسح إلا التخزين المؤقت لنقاط الاستلام. لحذف الإضافة، عطّلها ثم احذفها من صفحة Plugins. يُزال مفتاح الترخيص وحالة الترخيص لهذه الإضافة دائمًا، وكذلك التخزين المؤقت لنقاط الاستلام. أما الإعدادات وطرق المناطق فتُزال فقط إذا كان Remove data on uninstall مفعّلًا، وإلا تبقى لإعادة التثبيت لاحقًا. لا تُحذف نقطة الاستلام المحفوظة في الطلبات أبدًا، وتحتفظ الطلبات الحالية بسطور الشحن الخاصة بها.
DPD علامة تجارية مملوكة لصاحبها. هذه الإضافة غير مرتبطة بـ DPD ولا معتمدة منها.
