VibeFox GLS ParcelShop for PrestaShop — المساعدة
المتطلبات
PrestaShop: من 8.0 إلى 9.x. يعمل اختيار نقطة ParcelShop في القالبين Classic وHummingbird.
PHP: 8.0 أو أحدث. ترفض الوحدة التثبيت على إصدارات PHP الأقدم.
GLS: لا تستخدم الوحدة حساب GLS أو مفتاح API ولا تحتاج إليهما. خريطة نقاط ParcelShop عامة. تحتاج إلى عقد مع GLS لشحن الطرود إلى نقاط ParcelShop المختارة.
مفتاح ترخيص VibeFox: يُشترى من vibefox.net. يعمل مفتاح واحد على نطاق واحد.
التثبيت
1. في لوحة الإدارة، انتقل إلى Modules > Module Manager وانقر فوق Upload a module. اختر ملف ZIP الخاص بالوحدة.
2. عند انتهاء الرفع، انقر فوق Configure، أو ابحث لاحقًا عن VibeFox GLS ParcelShop في قائمة الوحدات وانقر فوق Configure.
3. أدخل مفتاح ترخيص VibeFox في License key ضمن كتلة الترخيص أعلى صفحة Configure، وانقر على Activate (انظر مفتاح الترخيص).
4. حدِّد أسعارك: صف واحد على الأقل في Country prices (مثل * Default) أو Fallback cost (انظر قسم الإعدادات)، ثم انقر فوق Save.
عند التثبيت، تُنشئ الوحدة شركة الشحن GLS ParcelShop مع نص مدة التوصيل Delivery to a GLS ParcelShop of your choice. تُخصَّص شركة الشحن لجميع مجموعات العملاء ولمناطق الدول الموجودة في خريطة GLS (في المتجر القياسي عادةً Europe وEurope (non-EU)). يمكنك تغيير المناطق ومجموعات العملاء ونص مدة التوصيل والشعار في Shipping > Carriers. لا تحدِّد الأسعار هناك: السعر يأتي دائمًا من الوحدة.
الإعدادات
جميع الإعدادات موجودة في صفحة الوحدة: Modules > Module Manager > VibeFox GLS ParcelShop > Configure. لكل قسم زر Save خاص به، وهو يحفظ الصفحة كاملة.
تشير التحذيرات أعلى الصفحة إلى مشكلات في الإعدادات: لم يتم العثور على شركة الشحن، أو لا تتعرف الوحدة على وحدة وزن المتجر (حدِّد kg أو g أو lb أو oz في International > Localization، ضمن Local units)، أو لم يتم تحديد أي سعر، أو أن بعض الدول أو كلها المختارة في Countries (ignore zones mode) غير مغطاة بخريطة GLS. يُرفض الرقم غير الصالح أو السالب برسالة تذكر اسم الحقل، وتبقى القيمة السابقة كما هي. تُحفظ الحقول الأخرى.
General
يسرد القسم الدول التي تغطيها خريطة GLS. لا تُعرض شركة الشحن لدول الوجهة الأخرى.
Enable/Disable: يفعّل GLS ParcelShop أو يعطّله. وهو المفتاح نفسه الذي يتحكم في حالة شركة الشحن في Shipping > Carriers.
Name: اسم طريقة الشحن الذي يراه العميل (اسم شركة الشحن). الافتراضي: GLS ParcelShop. حقل مطلوب، بحد أقصى 64 حرفًا.
Tax status: قاعدة الضريبة الخاصة بشركة الشحن. تعني None أن الشحن غير خاضع للضريبة. اختر قاعدة ضريبة لجعل الشحن خاضعًا للضريبة.
Prices
تُدخل الأسعار بالعملة الافتراضية للمتجر، دون الضريبة. يمكن استخدام الفاصلة أو النقطة للكسور العشرية (4,99 أو 4.99). يُعرض السعر للعميل بعملة السلة.
Calculation type: طريقة تطبيق السعر.
Country prices: جدول يحتوي على صف لكل دولة وجهة. انقر فوق Add country لإضافة صف، وعلى أيقونة سلة المهملات لحذفه. يحتوي كل صف على Country وPrice وخمسة أعمدة للوزن: XS حتى 1 كغ، وS من 1 إلى 2 كغ، وM من 2 إلى 3 كغ، وL من 3 إلى 5 كغ، وXL أكثر من 5 كغ. يُستخدم العمود المطابق لوزن السلة. أما عمود الوزن المتروك على 0 فيستخدم عمود Price. يُستخدم صف * Default للدول التي ليس لها صف خاص بها. تبدأ الصفوف الجديدة بـ * Default مع 0 في كل عمود، والصف الذي تكون جميع أسعاره 0 يعني توصيلًا مجانيًا؛ لذلك اختر الدولة واملأ الأسعار قبل الحفظ. إذا كانت قيمة في الجدول ليست رقمًا صالحًا، فلا يُحفظ الجدول بأكمله، وتذكر الرسالة القيم الخاطئة.
Fallback cost: السعر المستخدم عندما لا يوجد في الجدول صف لدولة الوجهة ولا صف * Default. اتركه فارغًا لإخفاء شركة الشحن لهذه الدول.
Free shipping from: المجموع الفرعي للسلة (بعد الخصومات، دون الضريبة) الذي يصبح عنده توصيل GLS ParcelShop مجانيًا. اتركه فارغًا إذا لم يكن التوصيل مجانيًا أبدًا.
Availability
Minimum weight (kg): يخفي شركة الشحن عندما يكون وزن السلة أقل من هذا الحد. يُحوَّل الوزن من وحدة وزن متجرك. القيمة الفارغة أو 0 تعني عدم وجود حد.
Maximum weight (kg): يخفي شركة الشحن عندما يكون وزن السلة أكبر من هذا الحد. الافتراضي: 20. تقبل نقاط GLS ParcelShop عادةً طرودًا حتى 20 كغ، لذلك تحقق من عقدك مع GLS. القيمة الفارغة أو 0 تعني عدم وجود حد. إذا كان الحد الأدنى أكبر من الحد الأقصى، يُرفض الوزنان برسالة وتبقى القيم السابقة كما هي.
Minimum cart subtotal: يعرض شركة الشحن فقط عندما يصل المجموع الفرعي للسلة (بعد الخصومات، دون الضريبة) إلى هذا المبلغ. اتركه فارغًا إذا لم يكن هناك حد أدنى.
Ignore shipping zones: عند التفعيل، تُربط شركة الشحن بجميع المناطق، بما فيها المعطلة، وتُعرض للدول المختارة أدناه، حتى إذا لم تكن ضمن مناطقها. تُربط المناطق التي تُنشأ لاحقًا أيضًا. عند إيقافه، تستعيد شركة الشحن المناطق التي كانت لديها سابقًا وتُعرض فيها فقط. الافتراضي: معطل.
Countries (ignore zones mode): دول الوجهة لهذا الوضع. اتركه فارغًا لاستخدام جميع دول خريطة GLS. تُتجاهل الدول غير المغطاة بخريطة GLS. يُستخدم هذا الحقل فقط عند تفعيل Ignore shipping zones.
Advanced
Debug log: يكتب حسابات الأسعار واختيارات نقاط ParcelShop في logs/vfd_glps_debug.log.php داخل مجلد الوحدة. لا يمكن فتح هذا الملف من الويب. تُسجَّل الأخطاء دائمًا. لا يُسجَّل أي بيانات شخصية للعميل. أوقف السجل عند الانتهاء.
Log: يعرض حجم أحدث إدخالات سجل تصحيح الأخطاء. انقر فوق Clear log لمسحه.
Remove data on uninstall: عند التفعيل، تؤدي إزالة الوحدة إلى حذف الإعدادات وشركة الشحن والسجل. وعند الإيقاف، يُحتفظ بكل شيء لإعادة التثبيت. تُحفظ نقطة ParcelShop المسجلة في الطلبات دائمًا.
كيف يعمل أثناء الدفع
عندما يعرض PrestaShop خطوة التوصيل، يطلب من الوحدة سعر GLS ParcelShop. تُحتسب المنتجات المادية فقط: المنتجات الافتراضية لا تضيف وزنًا ولا تدخل في المجموع الفرعي للسلة. تتحقق الوحدة أولًا من الشروط: أن دولة التوصيل مغطاة بخريطة GLS (وأنها مختارة في Countries (ignore zones mode) عند تفعيل هذا الوضع)، ووزن السلة، والحد الأدنى للمجموع الفرعي للسلة. إذا بلغ المجموع الفرعي للسلة Free shipping from، يكون التوصيل مجانيًا. وإلا يُؤخذ السعر من صف الدولة (أو صف * Default) ومن عمود الوزن، أو من Fallback cost. إذا لم يُعثر على أي سعر، تُخفى شركة الشحن.
عندما يختار العميل GLS ParcelShop، يظهر أسفل شركة الشحن مربع GLS ParcelShop يحتوي على زر Select GLS ParcelShop. يفتح الزر خريطة GLS ParcelShop الرسمية لدولة التوصيل. بعد اختيار نقطة ParcelShop، يُعرض اسمها وعنوانها، ويتحول الزر إلى Change ParcelShop. يُحفظ الاختيار في السلة، لذلك يبقى عند تحديث خطوة التوصيل أو إعادة تحميل الصفحة. إذا تغيّر عنوان التوصيل إلى دولة أخرى، فعلى العميل أن يختار نقطة ParcelShop من جديد.
عندما ينقر العميل على Continue في خطوة التوصيل، تتحقق الوحدة من أن نقطة ParcelShop قد اختيرت وأنها في دولة التوصيل. وإلا يرى العميل الرسالة Please select a GLS ParcelShop. أو The selected GLS ParcelShop is not in your shipping country. Please choose a ParcelShop again. ويبقى في خطوة التوصيل. وإذا تعذّر حفظ نقطة ParcelShop، يرى العميل The ParcelShop could not be saved. Please try again. وإذا تعذّر تحميل برنامج خريطة GLS، يرى رسالة تطلب منه إعادة تحميل الصفحة أو اختيار طريقة شحن أخرى.
تعمل خريطة GLS في متصفح العميل. وفي الدفع، تحمّل الوحدة برنامج الخريطة من map.gls-croatia.com، وتحمّل الخريطة بيانات نقاط ParcelShop وبلاطات الخريطة من GLS. تتلقى GLS بيانات الطلب المعتادة للزائر (عنوان IP والمتصفح). لا يُرسَل أي شيء من خادمك إلى GLS.
إذا عدّلت شركة الشحن في Shipping > Carriers بعد أن أصبح لها طلبات، فإن PrestaShop يحفظها كنسخة جديدة من شركة الشحن. وتتبع الوحدة النسخة الجديدة تلقائيًا.
لا تحصل الوحدة على أسعار GLS الحية، ولا تنشئ شحنات GLS، ولا تطبع الملصقات، ولا تتتبع الطرود. وليس لديها قائمة بنقاط ParcelShop على خادمك، لذلك لا تستطيع التحقق من معرّف نقطة ParcelShop لدى GLS. سلِّم معرّف نقطة ParcelShop من الطلب إلى GLS بالطريقة المعتادة لديك (MyGLS أو برنامج GLS الخاص بك أو وحدة أخرى).
نقاط الاستلام
عند تقديم الطلب، تُحفظ نقطة ParcelShop الموجودة في السلة مع الطلب: معرّفها واسمها مع العنوان ودولتها. ولا تتغير بعد ذلك مع السلة.
صفحة الطلب في لوحة الإدارة: تعرض كتلة GLS ParcelShop اسم نقطة ParcelShop وعنوانها مع ParcelShop ID والدولة. إذا لم يكن لطلب GLS ParcelShop نقطة ParcelShop، تعرض الكتلة الرسالة No ParcelShop was selected for this order.
صفحات العميل: تُعرض نقطة ParcelShop في صفحة تأكيد الطلب وفي صفحة تفاصيل الطلب في حساب العميل.
رسائل البريد الإلكتروني: تُضاف نقطة ParcelShop إلى اسم شركة الشحن في رسالة تأكيد الطلب التي تُرسل إلى العميل. كما تتضمن رسالة الطلب الجديد التي تُرسل إلى التاجر (وحدة Mail alerts) معرّف نقطة ParcelShop.
مفتاح الترخيص
تعمل الوحدة بمفتاح ترخيص VibeFox من vibefox.net. كتلة الترخيص License — VibeFox GLS ParcelShop هي أول كتلة في Modules > Module Manager > VibeFox GLS ParcelShop > Configure، فوق الإعدادات. أدخل المفتاح في License key وانقر على Activate. بعد ذلك تعرض الكتلة المفتاح مخفيًا، والحالة (مثل تاريخ انتهاء صلاحية الترخيص ونطاقك)، والأزرار Check now لإعادة التحقق من الحالة، وChange key لإدخال مفتاح آخر، وRemove key لإزالة المفتاح من هذا المتجر. وأسفلها السطر Product: presta-shipping-gls-parcelshop والرابط Manage licenses and domains in your account الذي يفتح حسابك على vibefox.net. لا يستطيع تغيير المفتاح سوى الموظفين الذين لديهم صلاحية Configure للوحدة. تتبع نصوص الكتلة لغة الواجهة الخلفية (تتضمن الإنجليزية والروسية).
إذا لم يُقبل المفتاح، تُبيّن الكتلة السبب، مثل Key not found أو This key belongs to another product أو Domain limit reached أو License expired on مع تاريخ. بعد تغيير عنوان المتجر، أو بعد تحرير خانة نطاق في حسابك، انقر على Check now. إذا تعذّر الوصول إلى خادم التراخيص، تستمر الوحدة في العمل بآخر حالة معروفة.
يعمل مفتاح واحد على نطاق واحد: نطاق المتجر الرئيسي، وكذلك في إعداد المتاجر المتعددة. إزالة المفتاح من المتجر لا تحرر خانة النطاق. حرّر الخانة من حسابك على vibefox.net.
بدون مفتاح نشط، لا تُعرض شركة الشحن GLS ParcelShop للعملاء أثناء الدفع ولا يُحتسب أي سعر. واجهة متجر PrestaShop لا تعرف أنك مسجّل الدخول إلى الواجهة الخلفية، لذلك تُخفى شركة الشحن عنك أيضًا: يمكنك إعداد الوحدة قبل شراء المفتاح، لكن لا يمكنك اختبارها أثناء الدفع. يظهر تذكير في Modules > Module Manager على تبويب Alerts. ولا تتأثر الطلبات الموجودة.
عندما تنتهي صلاحية الترخيص، تستمر الوحدة في العمل، لكن التحديثات والدعم تحتاج إلى تجديد. يُعاد التحقق من الحالة تلقائيًا أثناء عملك في الواجهة الخلفية: مرة واحدة يوميًا خلال أول 14 يومًا بعد إدخال المفتاح، ثم مرة واحدة أسبوعيًا. لا حاجة إلى مهمة cron. إلغاء تثبيت الوحدة أو إعادة ضبطها يحذف دائمًا مفتاح الترخيص وحالة الترخيص.
استكشاف الأخطاء وإصلاحها
لا تظهر GLS ParcelShop في الدفع: تحقق من أن الترخيص نشط وأن Enable/Disable مفعّل. وفي Shipping > Carriers تحقق من أن شركة الشحن تغطي منطقة دولة العميل ومجموعة العميل (أو فعّل Ignore shipping zones وتحقق من Countries (ignore zones mode)). تحقق من أن دولة الوجهة من دول خريطة GLS ولها سعر (صف للدولة، أو صف * Default، أو Fallback cost). تحقق من حدود الوزن ومن Minimum cart subtotal. قد تكون المنتجات مقيّدة بشركات شحن معينة في صفحة المنتج أيضًا. فعّل Debug log وانظر إلى حقل Log لمعرفة السبب.
لا تفتح الخريطة: يرى العميل الرسالة "The GLS ParcelShop map could not be loaded..." عندما يُحجب برنامج GLS، مثلًا بسبب مانع إعلانات أو خصوصية، أو سياسة أمان المحتوى (CSP)، أو توقف خدمة GLS. اسمح بـ map.gls-croatia.com في سياسة أمان المحتوى لديك.
التوصيل مجاني لدولة بالخطأ: تحقق من صف تلك الدولة في Country prices. الصف الذي يكون فيه Price وجميع أعمدة الوزن 0 يعني توصيلًا مجانيًا.
لم يُحفظ الجدول أو أحد الحقول: قيمة ما ليست رقمًا صالحًا. تذكر الرسالة أعلى الصفحة القيمة المقصودة. استخدم الأرقام مع الفاصلة أو النقطة كفاصل عشري.
تقول الصفحة إن شركة الشحن GLS ParcelShop غير موجودة: حُذفت شركة الشحن في Shipping > Carriers. أعد ضبط الوحدة في Modules > Module Manager لإنشائها من جديد. يحافظ Reset على حالة شركة الشحن الموجودة: فالشركة المعطلة تبقى معطلة.
لا تحتوي إحدى الطلبات على نقطة ParcelShop، ويذكر السجل أن نقطة ParcelShop الخاصة بالسلة محفوظة بالفعل في طلب آخر: تحولت سلة واحدة إلى طلبين. يحتفظ الطلب الأول بنقطة ParcelShop. سلّم الطلب الثاني إلى GLS يدويًا.
الإزالة
انتقل إلى Modules > Module Manager، وافتح القائمة بجوار VibeFox GLS ParcelShop، ثم اختر Uninstall. يُحذف مفتاح الترخيص وحالة الترخيص دائمًا.إذا كان Remove data on uninstall مفعّلًا، تُحذف شركة الشحن (تحتفظ الطلبات بسجلها)، وتُحذف الإعدادات والسجل ونقاط ParcelShop الخاصة بالسلات التي ليس لها طلب. وإذا كان معطلًا، تُعطَّل شركة الشحن فقط وتُحفظ جميع الإعدادات. عند إعادة تثبيت الوحدة، تستعيد شركة الشحن المحفوظة حالتها السابقة. تُحفظ نقطة ParcelShop المسجلة في الطلبات دائمًا.
GLS علامة تجارية تعود ملكيتها لصاحبها. هذه الوحدة غير تابعة لـ GLS ولا تحظى بتأييدها.
