سؤال

أريد حلاً لمشكلة كنت أعاني منها منذ فترة.

أنا تحتاج إلى نوع من قاعدة الشحن التي تغير السعر اعتمادًا على نهاية SKU.

على سبيل المثال، إذا كان أ SKU انتهى xxxx-TICK سيتم فرض رسوم عليه £5.00, ، حيث ك SKU تنتهي في xxxx-PHYS سيتم فرض رسوم على £10.00.

لم أجد أي منشور أو مكون إضافي يمكنه حل هذه المشكلة.

أنا منفتح على كل الأفكار!!

هل كانت مفيدة؟

المحلول

يمكنك تحقيق ذلك عن طريق تعديل طريقة CollectRates() الخاصة بفئة طراز الناقل الخاص بك.هنا، بهذه الطريقة يمكنك التحقق مما إذا كان عنصر عرض الأسعار يحتوي على منتج ينتهي SKU الخاص به إما بـ "TICK" أو "PHYS" وتعيين $shippingPrice بالقيمة المعنية.

$quote = Mage::getSingleton('checkout/session')->getQuote();

$cartItems = $quote->getAllVisibleItems();


foreach ($cartItems as $item) {
    $product = $item->getProduct();
    $sku = $product->getSku();

    //your logic to compare the sku
    //for example
    if('sku ends with TICK'){
        $shippingPrice += 5; 
    }

    if('sku ends with PHYS'){
        $shippingPrice += 10; 
    }
}

أتمنى أن يساعدك هذا.إذا كان لديك أي شكوك فلا تتردد في سؤالي أكثر.شكرًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top