Smarty. Получение массива служебных слов (тегов) находящихся в шаблоне

BelStudent

целеустремлённый чел
Smarty. Получение массива служебных слов (тегов) находящихся в шаблоне

Появилась такая затея чтобы дизанер, который работает в Smarty, определял какие модули подключать.
Например,
Код:
{$news}
<br/>
{$menu}
<br/>
{$login}
Но для этого я должен узнать сколько и какие зарезервированные слова использует дизайнер, чтобы подключать в php скрипте только те и ничего лишнего. В Smarty есть функция выводящая все служебные теги (слова) находящиеся в шаблоне?
Или придётся регуляркой распарсивать?
 

BelStudent

целеустремлённый чел
Скачал и просмотрел руководство по Smarty. Но такой функции найти не могу.
 

zerkms

TDD infected
Команда форума
напиши функцию, которая загружает модули

{load module="name"}

-~{}~ 08.08.09 00:24:

а в ман заглянуть - слабо?
кстати, тоже было бы интересно, где в мане такая чудесная функция
 

zerkms

TDD infected
Команда форума
tf
возможность загружать модули в тех местах, где нужно дизайнеру предоставленными ему средствами. не прибегая к каким бы то ни было услугам программиста.
 

tf

крылья рулят
хз хз, я морду сайта до сих пор ни модулями ни классами не пишу..
а разве активные шаблоны это не тупо вызов php кода из шаблона?
 

zerkms

TDD infected
Команда форума
ой начинается......
всё, забей.

ps: по секрету: почти всё, что ты пишешь в шаблоне - это тупо вызов пхп из шаблона.
 

BelStudent

целеустремлённый чел
Автор оригинала: zerkms
напиши функцию, которая загружает модули

{load module="name"}
Вообще-то не хотел смарти нагружать чем то большим, чем вывод подготовленной информации, поэтому всё хотелось бы сделать в php скрипте.
 

AmdY

Пью пиво
Команда форума
BelStudent
а зачем тебе тогда такая большая библиотека, если ты не хочешь пользоваться её возможностями?
 

BelStudent

целеустремлённый чел
Я не хочу что бы всё было завязано на смарти, чтобы в нужный момент мог отказаться в сторону другого шаблонизатора. Но пока считаю, что нужно изучит смарти, и если будет острая необходимость, то воспользоваться ей в полной мере.

Но вопрос не в том зачем использую Smarty, вопрос как вывести все служебные теги из шаблона в массив, или придётся работать регуляркой? (что не есть good)
 

Alexandre

PHPПенсионер
Он, наверно, имел ввиду "сам ищи" =)
он имел ввиду "глянь в ман и убедись, что такой функции нет и не стоит задавать подобных вопросов, и следовательно ни кто не будет тыкать об стол носом"

Я не хочу что бы всё было завязано на смарти, чтобы в нужный момент мог отказаться в сторону другого шаблонизатора.
если ты используешь код типа
Код:
{$news}
<br/>
{$menu}
<br/>
{$login}
то ты уже не отвяжешься от смарти ни когда. Не заню, WP реализовал ли плагины в своем квики. Если да, то можешь пересесть на него, но я бы не рискнул, хоть он и быстрее.
И вообще - трудно отвязаться от кокого-нибудь конкретного шаблонизатора. Год назад был холивар на тему универсальный класс для всех шаблонизаторов...
 

Ирокез

бессмертный пони
Команда форума
Партнер клуба
Вроде в смарти была возможность функции подключать свои (блоковые и нет) из примера

Код:
$smarty->register_block("translate", "do_translation");

{translate}{/translate}
для каждого блока регистрируем к примеру одину и ту-же функцию обработчик, которая подгружает очередной смарти шаблон по имени блока
 

Alexandre

PHPПенсионер
для каждого блока регистрируем к примеру одину и ту-же функцию обработчик, которая подгружает очередной смарти шаблон по имени блока
и имя функции пихаем в массив
а при необходимости выбираем все данные из массива ;) и имеем список всех зарегистрированных блоков
 

Ирокез

бессмертный пони
Команда форума
Партнер клуба
на входе функции обработчика приходит название блока, так-что нет смысла в массив ничего пихать
 
Сверху