Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> создание плагина smarty(с использованием {include} 
:(
    Опции темы
Borland
Дата 25.3.2010, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 26.10.2005

Репутация: нет
Всего: нет



Всем доброго времени суток. Достаточно давно рыскаю по форуму  и никак найти ответа не могу, может потому что его нету, может потому что туплю.

Вот есть, скажем так, массив (многомерный) (этакое дерево) вида

массив
- ветвь 1 ....
- ветвь 2 ....
- ....

каждая ветвь имеет свой идентификатор, по которому она отображается на странице.

Структура ветвей не важна. Главное то - что каждая ветвь - некий блок данных сходной структуры. Передаю этот массив в смарти. И дальше уже его разбираю и представляю в приятном для глаза виде. Трудность возникла в следующем. Пользователь (который не должен обладать глубокими знаниями в сайтах (формально должен знать только html) должен сам решить какой кусок куда ему отображать. В данный момент ему надо написать нечто типа 

Код

{include file="blok.tpl" name="имя (идентификатор) ветви"}


я бы хотел чтобы пользователь писал только {blok name="имя (идентификатор) ветви"}

поскольку это короче и несёт в себе меньше ошибок. В результате человек сможет быстро решить что и куда выводить....

Понимаю что надо написать плагин но не могу понять как в нём воспользоваться шаблоном blok.tpl т е как посути проинклудить шаблон ручками. Ибо этот шаблони и разбирает структуру ветви правильно.....

Подскажите пожалуйста!.



PM   Вверх
skyboy
Дата 25.3.2010, 00:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



Цитата(Borland @  24.3.2010,  23:11 Найти цитируемый пост)
name="имя (идентификатор) ветви"

а как в изначальном варианте 
Цитата(Borland @  24.3.2010,  23:11 Найти цитируемый пост)
{include file="blok.tpl" name="имя (идентификатор) ветви"}

внутри шаблона blok.tpl появлялись данные не об имени, а о параметрах узла ветви(имя или что там есть)?
чтоб внутри плагина вызвать обработку шаблона, можно воспользоваться методом fetch объекта $smarty:
Код

function smarty_function_block($params, &$smarty)
{
   if (!$smarty->template_exists('blocl.tpl')) {
      $smarty->trgiger_error('block.tpl does not exists');
   }
   if (!isset($params['name'])) {
      $smarty->trigger_error('Param named name must be set');
   }
    return $smarty->fetch('block.tpl');
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Libraries | Следующая тема »


 




[ Время генерации скрипта: 0.0404 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.