Получить атрибут категории Magento во внешнем интерфейсе - PullRequest
2 голосов
/ 03 ноября 2010

Я создал атрибут категории, который хочу использовать во внешнем интерфейсе.Я пытался получить к нему доступ таким же образом, как мы делаем для продуктов, но, похоже, он не работает.Как я могу показать пользовательский атрибут на веб-интерфейсе?Есть предположения?

Спасибо

Ответы [ 4 ]

6 голосов
/ 03 ноября 2010

Попробуйте это:

$cat_attr = $this->getCurrentCategory()->getAttributes();
if(array_key_exists('short_description', $cat_attr)):
    $_shortDescription=$cat_attr['short_description']->getFrontend()->getValue($_category);
endif;
3 голосов
/ 06 ноября 2010

Первое, что я хотел бы сделать, это сделать следующий код для вашего объекта категории

print_r($category->debug());

Это покажет вам, загружается ли этот атрибут.Если вы не видите свой атрибут, вы можете вернуться к контроллеру, куда загружается объект, и добавить его в свой выбор, добавив одну из следующих строк:

->addAttributeToSelect('your_attribute')

Это должно загрузить ваш атрибут длявы.

2 голосов
/ 20 июня 2016

У меня был собственный атрибут, и он отображался во внешнем интерфейсе таким образом;

$category_id = '10';
$attribute_code = 'category_categorycolor';
$category = Mage::getModel('catalog/category')->load($category_id);

echo $category->getResource()->getAttribute($attribute_code)->getFrontend()->getValue($category);
1 голос
/ 07 марта 2011

Довольно просто

<?php foreach ($this->getStoreCategories() as $cat): ?>
<?php  $_category=Mage::getModel("catalog/category")->load($cat->getId()); ?>

теперь вы должны использовать метод getImage для получения вашего атрибута img

<img src="<?php  echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . 'catalog/category/' . $_category->getImage() ?>" />

<?php endforeach ?>
...