Плейсхолдеры


#1

Здравствуйте, помогите пожалуйста с плейсхолдерами. Мне в переводе Оформить заказ нужно вывести количество товаров.

Оформить заказ ([amount])

Получается есть [amout] который выводит сумму и мне еще нужно будет количество товаров.
И возникает вопрос как и где добавляются эти плейсхолдеры?


#2

языковая переменная my_place_order : Оформить заказ ([amount])
вывод:

{__("my_place_order", $my_amount_order)}

$my_amount_order - массив
("[amount]" => Количество товара в заказе)
и его надо посчитать и передать в шаблон из контроллера (хука к контроллеру)

то есть принцип функции __
__( языковая переменная, array( плейсхолдер1 => на что меняем, плейсхолдер2 => на что меняем, …) )

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


#3

я в документациях прочитал что нужно сделать как то так

{__("admin_text_letter_footer", ["[company_name]" => $settings.Company.company_name])}

Но я не понял куда это прописывать


#4

тут design\themes\responsive\templates\buttons\place_order.tpl

заменить

{$but_text = __("lite_checkout.place_an_order_for", ["[amount]" => $smarty.capture.order_total])}

на

{$but_text = __("lite_checkout.my_place_an_order_for", ["[amount]" => $smarty.capture.order_total,"[count]" => $smarty.session.cart.amount])}

и создать перевод

Языковая переменная - lite_checkout.my_place_an_order_for
в значение добавить [count] например - Оформить заказ ([amount] , [count] шт)