Получить набор значений из одного файла TPL в другой файл TPL (Smarty Template Engine) с помощью cscart?
Мне нужно получить доступ к значению переменной, установленной с тегом ввода из одного файла TPL.
Это входной тег у меня есть в файле A.tpl:
<input type="checkbox" class="checkbox" name="payment_data[processor_params][enable_addbillcard]" id="optional_enable_addbillcard" value="1" {if $processor_params.enable_addbillcard == "1"}checked="checked"{/if} onclick="{$onchange_method}" />
Исходя из этого я делаю это в файле B.tpl:
{if $payment_data.processor_params.enable_addbillcard == "1"}
...
{/if}
Но условие if не работает, когда значение равно 1. Тело условия if не отображается из файла B.tpl.
Как я могу это сделать?
2 ответа
Решение
Понял это когда-то давно. Файл tpl должен иметь это вверху:
{assign var="payment_data" value=$cart.payment_id|fn_get_payment_method_data}
Тогда можно использовать дальше вниз в файле TPL
{if $payment_data.processor_params.enable_addbillcard == "1"}
Поэтому я думаю, что ответ является специфическим для Cscart.
Вы можете получить доступ к переменным запроса через $smarty.get...
и / или $smarty.post...
Попробуйте использовать
{if $smarty.get.payment_data.processor_params.enable_addbillcard == "1"}
Или если вы используете пост
{if $smarty.post.payment_data.processor_params.enable_addbillcard == "1"}