Амиро CMS: Вывод дополнительных свойств там, где они не доступны

Амиро CMS: Вывод дополнительных свойств там, где они не доступны

04.11.2013 35000
Амиро CMS: Вывод дополнительных свойств там, где они не доступны
Однажды, разрабатывая сайт на Амиро, понадобилось сделать простенькую задачу: вывести на главной список хитов продаж и при этом у каждого товара чтобы выводились размеры: ширина, высота, длина. Эти размеры были заведены как дополнительные свойства товаров. 

Сделать это в списке товаров - не проблема. А вот вывести эти значения в Анонсе специальных товаров или в списке связанных товаров - оказалось не так уж просто. Спасибо поддержке, разъяснили как это можно сделать. Как оказалось, этот способ подходит для всех мест, где стандартно значения дополнительных свойств товаров нельзя вывести.

Итак, для начала  в  /local/common_functions.php определите примерно такую функицю:

function getItemData($id, $fieldName){
$itemData = AMI::getResourceModel('eshop_item/table')->find($id)->getData();
// d::vd($itemData); // в режиме отладки выведет список доступных полей и их значения.
return $itemData[$fieldName];
}

Далее в шаблоне, внутри сета "item_row" обратитесь к функции:

 ##setvar @val = getItemData(id, "custom_field_6")## 

и выведите результат: 

##val##

Вторым параметром можете передавать имена полей, в первом всегда id товара. Для размера, например:

 ##setvar @val = getItemData(id, "size")##

Доп. поля возможно будет дополнительно обработать, в зависимости от типа данных.

Возврат к списку