PHP использовать определенные глобальные переменные в текстовом файле Smarty .conf - PullRequest
1 голос
/ 18 января 2020

Я установил глобальную переменную (STORE_PHONE_PICKUP_TIMES) в моем php интернет-магазине. Проблема заключается в том, чтобы использовать его, как описано ниже. Опробовано несколько вариантов размещения глобала php в файл. html через файл .conf. Но не удалось.

как:

define('STORE_PHONE_PICKUP_TIMES', '10:00-17:00');

имя_файла: shop_content.conf

[shop_content]
phone_pickup =  We are daily present at: {php} echo STORE_PHONE_PICKUP_TIMES{/php}

имя_файла: shop_content. html

<p>{#phone_pickup#}</p>

Результат: мы ежедневно присутствуем на: {php} echo STORE_PHONE_PICKUP_TIMES {/ php}

Как я могу получить этот GLOBAL в файл .conf, используя настройки, как описано выше.

1 Ответ

1 голос
/ 18 января 2020

Невозможно использовать php в конфигурации smarty. И это хорошо, потому что заставляет вас использовать лучшую логику c вашего приложения;)

Я предлагаю использовать глобалы в шаблонах:

<p>{#phone_pickup#} {$smarty.const.STORE_PHONE_PICKUP_TIMES}</p>

ИЛИ

хранить часы выдачи только в конфиге, это хорошее место для него (и отдельно от языковой строки):

phone_pickup_hours = '10:00-17:00' phone_pickup = 'We are daily present at:'

сейчас, в tpl это просто: <p>{#phone_pickup#} {#phone_pickup_hours#}</p> но я предположил, что вы используете define , потому что вы используете эту константу в других местах, например, в слое контроллера, так что .. в php вы можете использовать переменную конфигурации следующим образом:

$pickup_hours = $smarty->getConfigVars('phone_pickup_hours');

...