Название Категории В Карточке Товара

Здравствуйте, подскажите возможность реализации : в списке товара products_list.tpl показывать название категории к которой она принадлежит (и ссылка на нее) на странице поиска, если список показывается на своей категории, то вызвать можно {$smarty.session.current_category_id|fn_get_category_name} или

{$category_data.category} но на странице поиска результата нет

Здравствуйте, подскажите возможность реализации : в списке товара products_list.tpl показывать название категории к которой она принадлежит (и ссылка на нее) на странице поиска, если список показывается на своей категории, то вызвать можно {$smarty.session.current_category_id|fn_get_category_name} или

{$category_data.category} но на странице поиска результата нет

Попробуйте

{$product.main_category|fn_get_category_name}

Огромное спасибо, работает, полное решение с сылкой на страницу категории выглядит так

{$product.main_category|fn_get_category_name}

Дальше опять ступор, в категории добавил новое поле (на подобии название категории) в списке товара products_list.tpl добавил {$category_data.elm_name_my} в карточке товара если смотреть в категориях эти данные выводятся, а на странице поиска нет, соответственно на странице поиска {$category_data|fn_print_r} не выводит данных

Не совсем понятно, вы поле для категории или для товаров добавили? Обычно для списка берется ограниченное кол-во информации из базы, а на детальной странице вся информация получается. Скорее всего нужно расширить соответствующую функцию в app/functions/fn.catalog.php

Поле добавлено именно в категории, в таблицу списка товара products_list.tpl добавил {$category_data.elm_name_my} где "elm_name_my" моя новая переменная, если список показывается на странице категории, то переменная выводится, а вот на странице поиска нет,

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

{if !$category_data}
    {$category_data = $product.main_category|fn_get_category_data}
    {$category_data.elm_name_my}
    {$category_data = ''}
{/if}



Так на поиске могут товары от нескольких категорий быть. Для каждого товара код примерно такой

Спасибо, то что надо, у меня товар принадлежит только одной категории

Здравствуйте! Теперь в html блоке с поддержкой смарти при использовании {$product.main_category|fn_get_category_name} на странице товара получаем ошибку “modifier ‘fn_get_category_name’ not allowed by security setting”
Подскажите как вывести название категории товара в html блоке с поддержкой смарти?

В последних версиях был добавлен новый блок с поддержкой SMARTY. Попробуйте с помощью нового блока создать. Возможно, для старых блоков что-то запретили

1 лайк

Да, когда обновлял тему АВ сказали, заменить все старые блоки smarty на новые, старые блоки даже редактировать не дает.

Да создаю именно в новом блоке с поддержкой SMARTY (CS-Cart v4.16.2) вставляю этот код {$product.main_category|fn_get_category_name}, после чего на витрине получаю такую ошибку “modifier ‘fn_get_category_name’ not allowed by security setting”
…также подскажите как вывести название на определенном языке, так как ранее выводило только на языке по умолчанию

Не могу сказать, почему так. Язык можно было передавать вторым аргументом в функцию

подскажите пожалуйста какой именно аргумент надо добавить в функцию для вывода названия категорий на необходимом языке?

Например

{$product.main_category|fn_get_category_name:'ru'}

Спасибо

1 лайк