Magento: Получение выбранного значения атрибута товара в модуле Checkout Shipping - PullRequest
1 голос
/ 02 февраля 2010

На моем сайте некоторые продукты не продаются в Калифорнии. Пока пользователь оформляет заказ, я должен выполнить проверку, например, если в корзине есть товары, не предназначенные для продажи в Калифорнии, а адрес доставки пользователя находится в Калифорнии, запретить пользователю оформить заказ.

Продажа в ЦС устанавливается со стороны администратора с использованием атрибута 'avl'.

вот код, который я использую для перебора корзины и проверки атрибута


.....................
 $cart = Mage::getSingleton('checkout/session')->getQuote()->getAllVisibleItems();
       foreach ($cart as $_item){

           $_product = $_item->getProduct();
           //If atleast one product has availability status set to California, then set the flag and break.
           if($_product->getResource()->getAttribute('avl')->getFrontend()->getValue($_product) == 'NC'){
               $flag = true;
               break;
           }
......................

Ну, теперь проблема в том, что я не могу получить значение 'avl', установленное со стороны администратора.

Этот код находится в локальной сети // Оформление заказа / Блокировка / Onepage / Shipping.php

Есть идеи о том, как получить значение атрибута?

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 06 февраля 2010

Чтобы получить атрибуты товара во время оформления заказа, проще всего просто полностью загрузить товар:

$_product = Mage::getModel('catalog/product')->load($_item->getProduct());
$_avl = $_product->getAvl();

Конечно, при загрузке товара возникают накладные расходы, но это самый быстрый способ получить значение атрибута из элемента корзины.

0 голосов
/ 06 марта 2012
<?php $_item = $this->getItem()?>
<?php $_product= Mage::getSingleton('catalog/product')->load($_item->getProductId())?>
<?php echo $_product->getResource()->getAttribute('attribute_code')
      ->getFrontend()->getValue($_product); ?>

приложение / дизайн / интерфейс / your_default / your_default / шаблон / выписка / корзина / товар / defaul t.phtml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...