"الحصول على عروض الأسعار" بإرجاع أي خطأ إذا لم تكن هناك معدلات متوافرة

magento.stackexchange https://magento.stackexchange.com//questions/51880

سؤال

إنها دائما طريقة جيدة لإظهار أي نتيجة (سلبية أو إيجابية) للمستخدم.

في حالتي ، عندما أنقر على زر 'الحصول على عروض الأسعار' على عربة التسوق الخاصة بي الصفحة والأسعار متوفرة-لا بأس.

ولكن عندما لا تكون هناك أسعار متاحة لهذا العنوان ، أحتاج إلى إظهار شيء للعميل مثل 'مهلا ، لا توجد معدلات المتأنق'.

بقدر ما أفهم ، ولست بحاجة لحفر في estimatePostAction طريقة والتحقق من معدلات يدويا وتعيين بعض فلاش رسالة.

ولكن أنا فقط أتساءل عن هل هناك طريقة أخرى الماجنتو أن يكون هذا النهج?

شكرا على أي اقتراح أو رؤية.

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

المحلول

حسنا ، أخيرا قمت بحل هذه المشكلة.

لكنني لم أستخدم وحدة التحكم في العربة بسبب هذه المسألة, ، لكن المراقب sales_quote_collect_totals_after.

نصائح أخرى

أنا فقط استخدم شيئا مشابها لـ:

<?php $_shippingRateGroups = $this->getShippingRates(); ?>
<?php if (!$_shippingRateGroups): ?>
    <p><?php echo $this->__('Sorry, no shipping quotes are available to this address. Please contact us at ' . Mage::getStoreConfig('general/store_information/phone') . ' for a shipping quote') ?></p>
<?php else: ?>
    ...success message...

و وظيفة جيتشيبينغراتس لدينا تبدو شيئا من هذا القبيل:

 public function getShippingRates()
{
    if (empty($this->_rates)) {
        $this->getAddress()->collectShippingRates()->save();
        $groups = $this->getAddress()->getGroupedAllShippingRates();
        /**
        * If no shipping rate is found an error report will be logged containing product and customer information.
        */
        if (empty($groups)) {
            $this->noShipRateError();
        }
        return $this->_rates = $groups;
    }
    return $this->_rates;
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top