Переменную в шаблоны

Господа, не хочется влезать в дебри смарти, расскажите, пожалуйста, как и самое главное где можно заставить фреймворк передать во все шаблоны какие-то мои переменные? Желательно, конечно, разобраться, как передавать переменные в конкретные шаблоны… но даже боюсь спрашивать (съедят ведь). Особенно интересуют шаблоны шапки, так как именно её нужно доработать (header.tpl, header_top.tpl, header_nav.tpl). Элементарно — проверить, стоит кука или нет, записать её значение в переменную и передать её в эти шаблоны. Как?

Корю и бичую себя за безграмотность и невежество.

6 комментариев

avatar

{php}$bla_bla='бла, бла';{/php}
.... [куча кода html] ....
{php}echo $bla_bla;{/php}
avatar
Да, способ работает, но жизненный цикл переменных и самого кода — в пределах отдельного шаблона :) Соответственно, если мне надо одну и ту же переменную использовать в нескольких шаблонах, мне в каждом из них надо писать код получения этих самых переменных (зачастую это один и тот же код) и выполнять его снова и снова для каждого шаблона.
avatar
include
avatar
Опять же — выполнять один и тот же код? А если там запрос(ы) к БД…
avatar
Соответственно, если мне надо одну и ту же переменную использовать в нескольких шаблонах, мне в каждом из них надо писать код получения этих самых переменных (зачастую это один и тот же код) и выполнять его снова и снова для каждого шаблона.
Опять же — выполнять один и тот же код? А если там запрос(ы) к БД…
Это называется поделить на ноль.

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

livestreet.ru/profile/sfilimonov/favourites/ — загляните сюда, Вам это возможно поможет.
avatar
Спасибо за полезную ссылку, видимо, придётся-таки разбираться с плагинами и хуками LS…
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.