أنت تتطلع إلى تعيين أسعار مختلفة للوحدة بناءً على الكمية المضافة إلى سلة التسوق ، على سبيل المثال من 1-100 السعر هو 5 دولارات ، والسعر من 101 إلى 1000 هو 4.90 دولار ومن 1001 وحدة ، يصبح السعر المطلوب 4.75 دولارًا.
هناك العديد من المكونات الإضافية للتسعير الديناميكي (والرقم # 2 في هذه المقالة يناسب قواعد التسعير المعقدة والخصومات الديناميكية) ، لكن هذه المرة أريد أن أعلمك رمزًا بسيطًا لتسعير DIY WooCommerce المستند إلى الكمية .
كالعادة ، التعليقات والمشاركات محل تقدير كبير. يتمتع!
لقطة شاشة لمنتج WooCommerce بسعر 34 يورو لكل وحدة أقل من عتبات التسعير المجمعة لدينا (المزيد من لقطات الشاشة أدناه)
مقتطف PHP: تغيير سعر المنتج بناءً على الكمية المضافة إلى سلة التسوق (التسعير بالجملة)
في مثالنا ، سعر منتجنا هو 34 يورو وأريد تطبيق خصم 5٪ فوق 100 وحدة وخصم 10٪ فوق 1000 وحدة. لقطات الشاشة للعتبة 1 والعتبة 2 أقل من المقتطف.
/**
* @snippet Bulk (Dynamic) Pricing - WooCommerce
* @how-to Get CustomizeWoo.com FREE
* @author Rodolfo Melogli
* @compatible WooCommerce 3.8
* @donate $9 https://businessbloomer.com/bloomer-armada/
*/
add_action( 'woocommerce_before_calculate_totals', 'bbloomer_quantity_based_pricing', 9999 );
function bbloomer_quantity_based_pricing( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) ) return;
if ( did_action( 'woocommerce_before_calculate_totals' ) >= 2 ) return;
// Define discount rules and thresholds
$threshold1 = 101; // Change price if items > 100
$discount1 = 0.05; // Reduce unit price by 5%
$threshold2 = 1001; // Change price if items > 1000
$discount2 = 0.1; // Reduce unit price by 10%
foreach ( $cart->get_cart() as $cart_item_key => $cart_item ) {
if ( $cart_item['quantity'] >= $threshold1 && $cart_item['quantity'] < $threshold2 ) {
$price = round( $cart_item['data']->get_price() * ( 1 - $discount1 ), 2 );
$cart_item['data']->set_price( $price );
} elseif ( $cart_item['quantity'] >= $threshold2 ) {
$price = round( $cart_item['data']->get_price() * ( 1 - $discount2 ), 2 );
$cart_item['data']->set_price( $price );
}
}
}
تم الوصول إلى الحد 1: خصم 5٪
تم الوصول إلى الحد 2: خصم 10٪
المنشورات ذات الصلة:
WooCommerce: تعيين الحد الأدنى لمبلغ الشراء لمنتج معين
منطق WooCommerce الشرطي – العلامات والأمثلة و PHP
WooCommerce: “اشترِ واحدًا واحصل على الآخر” (بدون مكون إضافي!)
WooCommerce: المجموع الفرعي لسلة التسوق المقطوعة في حالة القسيمة @ السلة
WooCommerce: راجع ما يوجد داخل مصفوفة العربة (print_r)
WooCommerce: عرض المنتجات في نموذج طلب جدول
WooCommerce: قم بتغيير كمية إضافة إلى عربة التسوق في قائمة اختيار المنسدلة
WooCommerce: مزامنة كميات المنتج في سلة التسوق
WooCommerce: تعيين / تجاوز سعر المنتج برمجيًا
WooCommerce: احسب المجموع الفرعي على زيادة الكمية @ منتج واحد
أين تضيف هذا المقتطف؟
يمكنك وضع مقتطفات PHP في الجزء السفلي من ملف function.php القالب الفرعي الخاص بك (احذف “؟>” إذا كان لديك هناك). من ناحية أخرى ، ينتقل CSS في ملف style.css الخاص بسمة الطفل. تأكد من أنك تعرف ما تفعله عند تحرير مثل هذه الملفات – إذا كنت بحاجة إلى مزيد من الإرشادات ، فيرجى إلقاء نظرة على الفيديو التعليمي المجاني الخاص بي “أين تضع تخصيص WooCommerce؟”
هل هذا المقتطف (لا يزال) يعمل؟
يرجى إعلامي في التعليقات إذا كان كل شيء يعمل كما هو متوقع. يسعدني مراجعة المقتطف إذا أبلغت بخلاف ذلك (يرجى تقديم لقطات شاشة). لقد اختبرت هذا الكود مع موضوع Storefront وإصدار WooCommerce المذكور أعلاه واستضافة صديقة لـ وورد بريس على PHP 7.3.
إذا كنت تعتقد أن هذا الرمز وفر لك الوقت والمال ، فلا تتردد في الانضمام إلى أكثر من 14000 مشترك في WooCommerce Weekly للحصول على تحديثات منشورات المدونة أو أكثر من 250 من مؤيدي Business Bloomer لمدة 365 يومًا من مزايا WooCommerce . شكرا لكم مقدما 🙂
هل تحتاج إلى مساعدة في WooCommerce؟
تحقق من دروس الفيديو المجانية هذه. يمكنك تعلم كيفية تخصيص WooCommerce بدون مكونات إضافية غير ضرورية ، وكيفية تكوين إعدادات البرنامج المساعد WooCommerce بشكل صحيح وحتى كيفية إتقان استكشاف أخطاء WooCommerce في حالة حدوث خطأ!

