Отображение опций в списке товаров¶
Примечание
Статья не рассчитана на работу с вариациями из модуля “Вариации товаров [Beta]”.
Описание¶
По умолчанию на странице списка товаров скрыто отображение опции товаров. Опции товаров доступны на детальной странице товара.
Вы можете включить отображение опций на странице каталога, если это необходимо.
Было | Стало |
---|---|
Подготовка¶
Вам необходимо:
Откройте файл:
/design/themes/[название_темы]/templates/blocks/product_list_templates/products_without_options.tpl
Добавьте новый параметр
show_product_options=true
в подключение smarty шаблонаblocks/list_templates/products_list.tpl
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
{** template-description:tmpl_list_without_options **} {include file="blocks/list_templates/products_list.tpl" show_product_options=true {* ← новый параметр *} show_name=true show_sku=false show_rating=true show_features=true show_prod_descr=true show_old_price=true show_price=true show_clean_price=true show_list_discount=true show_discount_label=true show_product_amount=true show_product_edp=true show_add_to_cart=true show_list_buttons=true show_descr=true but_role="action" separate_buttons=true}
Очистите кэш и проверьте результат на витрине.
Отлично, опции появились в списке товаров. Теперь перенесём изменения в модуль «Мои изменения».
Верните к оригинальному виду файл:
/design/themes/[название_темы]/templates/blocks/product_list_templates/products_without_options.tpl
Внесение изменений с помощью модуля¶
Мы определили файл и необходимые модификации для отображения параметров в списке товаров.
Правильным решением будет — внести данные изменения с помощью модуля.
Нужный нам шаблон не имеет хуков. Однако каждый шаблон сам по себе является хуком, его можно перезаписать с помощью модуля.
Мы будем вносить изменения с помощью модуля «Мои изменения» (my_changes).
Пройдите в папку шаблонов темы:
/design/themes/[название_темы]/templates/
Пройдите в папку шаблонов модуля
my_changes
:/design/themes/[название_темы]/templates/addons/my_changes
Примечание
Если у вас нет данной папки, создайте её
Чтобы перезаписать какой либо шаблон, вы должны создать папку
overrides
в папке шаблонов вашего модуля.Создайте и пройдите в неё:
/design/themes/[название_темы]/templates/addons/my_changes/overrides
Любой файл, который вы разместите в данной папке, перезапишет оригинальный файл. Очень важно сохранить структуру папок:
Было: /design/themes/[название_темы]/templates/blocks/product_list_templates/products_without_options.tpl
Стало: /design/themes/[название_темы]/templates/addons/my_changes/overrides/blocks/product_list_templates/products_without_options.tpl
Другими словами, в папке
overrides
вашего модуля, вы должны повторить путь к файлу относительно папки шаблонов/design/themes/[название_темы]/templates/
.Создаём папку:
/design/themes/[название_темы]/templates/addons/my_changes/overrides/blocks/product_list_templates/
Копируем в неё оригинальный файл products_without_options.tpl из папки:
/design/themes/[название_темы]/templates/blocks/product_list_templates/
Открываем файл:
/design/themes/[название_темы]/templates/addons/my_changes/overrides/blocks/product_list_templates/products_without_options.tpl
и вносим в него нужные нам изменения — добавляем параметр:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
{** template-description:tmpl_list_without_options **} {include file="blocks/list_templates/products_list.tpl" show_product_options=true {* ← новый параметр *} show_name=true show_sku=false show_rating=true show_features=true show_prod_descr=true show_old_price=true show_price=true show_clean_price=true show_list_discount=true show_discount_label=true show_product_amount=true show_product_edp=true show_add_to_cart=true show_list_buttons=true show_descr=true but_role="action" separate_buttons=true}
Установите и включите модуль «Мои изменения».
Результат:
Если изменения не появились:
- Очистите кэш, удалив папку
/var/cache/
- Проверьте правильность путей и файлов.
- Очистите кэш, удалив папку
Готово!
Важно
Внесение изменений с помощью модуля позволит:
- Не потерять изменения при обновлении платформы;
- Вы можете в любой момент выключить модуль;