Предположим, у меня есть атрибут, представляющий собой набор параметров (выпадающий / множественный выбор).
Я могу получить значение атрибута для данного продукта:
$store_id = [something];
$productId = [something];
// this is a select/multiselect
$attribute_code = [something];
$option_id = Mage::getResourceModel('catalog/product')->getAttributeRawValue($productId, $attribute_code, $store_id );
$option_label = ???
Теперь я получил атрибут option_id, который является числовым значением ...
... Каков наилучший способ загрузить метку атрибута внешнего интерфейса для моего значения атрибута? (без загрузки полного продукта)
Решение спасибо Мариусу :
// Not loading the product - just creating a simple instance
$product = Mage::getModel('catalog/product')
->setStoreId($store_id)
->setData($attribute_code,$option_id);
$option_label = $product->getAttributeText($attribute_code);
2
Почему этот вопрос задается несколько раз точным автором и все они сбивают с толку пользователей. Можем ли мы пометить как дубликаты как эти вопросы без правильных ответов? На этот вопрос magento.stackexchange.com/questions/3003, заданный автором, нет правильных ответов, но почему вы проголосовали (и дали собственный ответ)! Этот magento.stackexchange.com/questions/976 такой же. Возможно, моя просьба не верна, но один вопрос, один автор и никаких ответов. Пожалуйста, сохраняйте качество сайта. Благодарю.
—
mageUz
Я улучшил другой вопрос, добавив решение @Marius magento.stackexchange.com/questions/3003/…
—
Fra
Обратите внимание, что, по крайней мере, в Magento CE 1.9 и EE 1.14 и ниже,
—
Тайлер В.
getAttributeText('value')
он не будет работать правильно, если метод атрибута getAllOptions()
возвращает опции, упорядоченные во вложенных массивах (выражается <optgroup>
в выпадающем списке.)