تحتوي Shopware على وحدة تكلفة شحن قوية يمكنك التدخل فيها على وجه التحديد في الحساب. في حالتنا ، نريد تنفيذ السيناريو التالي: يتم تحديد تكاليف الشحن لكل مقالة مبدئيًا وفقًا لوزن المقالة (يتم تحديد حدود الوزن). فقط للاستثناءات الخاصة ، يجب أن يكون من الممكن تحديد تكاليف شحن ثابتة لكل عنصر.
يبدو جدول تكلفة الشحن هكذا:
وزن | رفع الوزن | السعر |
0 كجم | <3 كجم | 4,99 € |
3 كجم | <5 كجم | 6,90 € |
5 كجم | <10 كجم | 9,50 € |
10 كجم | <15 كجم | 10,90 € |
15 كجم | <20 كجم | 12,90 € |
20 كجم | <31 كجم | 17,90 € |
31 كجم | <40 كجم | 49,90 € |
من 40 كجم | 49.90 يورو السعر الأساسي + 0.59 يورو للكيلوجرام |
في البداية قد تحصل على فكرة تحديد قيمة "الوزن" في الحقل "حساب تكاليف الشحن وفقًا لـ:" وإدخال الحدود المقابلة أدناه:
هنا لديك عدة مشاكل: تطبيق القاعدة "من 40 كجم: 49.90 يورو السعر الأساسي + 0.59 يورو للكيلوغرام" ليس من السهل تنفيذه ، والقيم مثل 2،999 ليست دقيقة ولا توجد إمكانية لتخصيص تكاليف الشحن بشكل فردي لكل مقالة . لجعل هذا ممكنًا ، نقوم أولاً بإنشاء حقل نص حر جديد (على سبيل المثال "attr5") ضمن الإعدادات> المقالة> حقول النص الحر للمقالة:
سنقوم الآن بملء هذا الحقل بالقيمة باليورو لجميع العناصر التي يجب أن يكون لها تكاليف شحن فردية. يتم استخدام نقطة بدلاً من فاصلة للأرقام العشرية:
أخيرًا ، أنشأنا طريقة شحن جديدة بالإعدادات المهمة "حساب تكاليف الشحن وفقًا لـ: الحساب الخاص" و "العامل (٪): 100":
أخيرًا ، ضمن "الإعدادات المتقدمة" ، نقوم بتخزين وظيفة الحساب الجديدة الخاصة بنا ضمن "الحساب الخاص":
a359cdf87765551f0706
تأخذ هذه الوظيفة وزن كل عنصر وتحسب السعر. ثلاثة عناصر مختلفة بوزن 2.5 كجم تكلف 14.97 يورو ، ثلاثة أضعاف نفس العنصر بوزن 2.5 كجم تكلف 9.50 يورو. إذا كنت تريد إجراء الحساب بناءً على الوزن الإجمالي (مع النتيجة 9.50 يورو في كلتا الحالتين) ، فأنت تقوم فقط بتغيير وظيفة الحساب إلى الحد الأدنى:
a359cdf87765551f0706
إذا كان سيتم أيضًا تضمين التجار ، فيجب أن تكون حذرًا مع الأسعار المحددة في استعلام SQL سواء كانت قيمًا صافية أو إجمالية (بناءً على القيم المحددة في الإعدادات الأساسية> إعدادات المتجر> مجموعات العملاء> إدخال الأسعار الإجمالية).
إذا كنت تريد أن تأخذ في الاعتبار ميزة العنصر "وضع علامة على العنصر على أنه شحن مجاني" (لكل عنصر) ، فقم بتوجيه العمود b.shippingfree واضبط الخيار التالي في الإعدادات> تكاليف الشحن > الإعدادات المتقدمة> عناصر الشحن المجانية ":
بمساعدة SQL ، يمكنك بناء أي استعلامات معقدة. يُنصح بإعداد الاستعلام النهائي بمساعدة متغيرات SQL بحيث يظل الأمر برمته سهل الصيانة. ما يلي هو مثال نموذجي لاستعلام أكثر تعقيدًا يميز بين عملاء المتجر وتجار التجزئة ، ويأخذ في الاعتبار عناصر الشحن المجاني ، ويتقاضى تكاليف الشحن فقط لعربة التسوق القصوى وينقر على جداول أسعار مختلفة (حسب العلامة التجارية):
a359cdf87765551f0706