Изменение информации под ценой в карточке товара

Подскажите, пожалуйста, можно ли эту информацию делать различной для разных товаров или категорий товаров? Как это можно сделать?
Товары цифровые

Язаковая переменная? Искали в переводах? /admin.php?dispatch=languages.translations

Да, языковую нашла text_edp_product. А как сделать ее разной для разных товаров? Или так нельзя?

Искал, не нашел решения этой задачи.

Но вопрос насущный, надо разработчикам запрос написать.

А куда им писать?
Насущный, да, а то придется выдумывать фразу,чтобы всем товарам подошло))

Разный? Например?
В карточке товара есть разное содержимое - краткое описание, описание, вкладки.

У меня товары цифровые, но некоторые доставляются автоматом после оплаты, а некоторым нужно вручную присвоить код, прежде чем отправить. Было удобно, когда прямо под ценой написано, что товар покупатель получит сразу после оплаты. Но теперь это ко всем товарам не подходит. Варианты - убирать надпись вообще и переносить данные в другие разделы, придумывать общий вариант для всех, делать разные варианты.

Может сделать текстовую характеристику и включить отображение в карточке товара? В стандартном шаблоне такие хар-ки выводятся под названием товара.

Так глубоко в код я не залезу…
В любом случае спасибо за совет!

Это не в коде, а в настроке характеристики.

1 лайк

Эта характеристика появляется прямо под наименованием товара. Немного не там(((

А промо текс в товаре заполнить?

У меня заполняются по максимуму все текстовые поля. Дело то не в этом.
Есть конкретное текстовое поле, которое расположено в очень привлекательном месте в карточке товара - под ценой. Это поле выводится только для цифровых товаров вместо количества. И оно одинаково для ВСЕХ товаров, а мне необходимо его менять.

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

Благодаря наводке @ustasby нашел решение. Делается подобное через создание новых шаблонов главного блока страницы товара. Грубо и быстро делается так:

  1. В файле /design/themes/ТЕКУЩАЯ_ТЕМА/templates/common/product_data.tpl находите текст:

{__(“text_edp_product”)}

и заменяете его на:

{$text_edp}

  1. Сколько дополнительных видов этого текста вам нужно, столько же нужно создать текстовых переменных (пусть это будут text_edp_product2, text_edp_product3 и т.д.).

  2. По количеству дополнительных языковых переменных создаете копии шаблона /design/themes/ТЕКУЩАЯ_ТЕМА/templates/blocks/product_templates/ТЕКУЩИЙ_ШАБЛОН.tpl в той же директории.

  3. В каждой копии находите текст:

{include file=“common/product_data.tpl” product=$product but_role=“big” but_text=__(“add_to_cart”)}

и заменяете на:

{include file=“common/product_data.tpl” product=$product but_role=“big” but_text=(“add_to_cart”) text_edp=(“text_edp_product2”)}

где text_edp_product2 - одна из ваших новых переменных.
В каждом новом шаблоне окажется своя новая переменная.

Из-за изменений, сделанных в п.4, у вас в основном шаблоне перестанет показываться нужная надпись. Поэтому в нем тоже нужно провести операцию из этого пункта.

  1. Чистите кэш

  2. В нужных товарах и/или категориях в “Отображение карточки товара” выбираете соответствующий шаблон.

Это грубо, лучше выносить такие модификации в модуль “Мои изменения”.

Т.е. для 500 товаров нужно сделать 500 шаблонов товара? А значение переменной откуда брать? Задавать прямо в шаблоне? Тогда смысл в переменной если в каждом шаблоне можно прописать языковую переменную которую добавить через админку. В любом случае даже десятки шаблонов страницы товаров это не есть гуд :slight_smile:

Знаете принцип - хреново лучше, чем никак?)

О чем вы пишете понятно, но там

а, значит, всего 2-3 шаблона нужно.

И самое главное достоинство - работать начнет здесь и сейчас. А потом уже можно долго и спокойно искать более правильные решения.

Да, кстати; прям так влепить в шаблон нужный текст нужно.

  • в cscart_product_descriptions и cscart_ul_product_descriptions добавить новое поле
  • выводить через какой-нибудь хук в админку (design/backend/templates/views/products/update.tpl)
  • в указанном файле (design/themes/TEMA/templates/common/product_data.tp) выводить его значение. Если пустое, выводить стандартную переменую
  • добавить возможность экспорта/ импорта

За час можно управиться )

1 лайк

Спасибо! Но сложновато для меня.
Вариант с шаблонами выглядит более реализуемым)