Появилась возможность устанавливать хуки прямо внутри шаблона — trac.lsdev.ru/livestreet/changeset/848
Делается это за счет плагина к Smarty hook, например:
{hook run='body_begin'}
вызовет хуки повешенные на событие 'template_body_begin'(обратите внимание, что приставка template_ добавляется автоматически, если хук вызван из шаблона), а их результат в виде строки вернется в шаблон.
Предлагаю определиться какие нужны стандартные хуки? Сейчас добавлено только два: body_begin и body_end, соответственно вызываются в начале HTML тега BODY и в конце.
14 комментариев
Отлично!
comments_top — верх листа комментов
comments_bottom — низ листа комментов
comments_form_top — верх формы добавления комментария
comments_form_bottom — низ формы добавления коммента
topics_top — верх топика
topics_bottom — низ топика
+ хук для подключения JS и CSS. К примеру через плагин какой-то нужно подлючить свой JS.
Стоит добавить еще в menu.topic_action.tpl после трех — типов топиков вызов хука, например, {hook run='topic_action_menu'}
Тогда разработчики плагинов, добавляющих свой тип топика, будут более счастливы :)
Выше было упоминание о добавлении хука «topic_action_menu» — можно будет добавлять свои кнопки в меню создания топика. А как насчёт вывода этих самых топиков? То есть, нужны хуки в topic_list.tpl внутри цикла foreach.
Еще не хватает наверно хука в header_top.tpl в месте меню юзера.
К примеру, сейчас вышел плагин биллинга и заданий, и в нем как раз вывод баланса юзера в этом меню. И получаются дубли файла header_top.tpl в плагинах.
Еще заметил, что нету хуков в месте вывода самого контента. Т.е. в header.tpl где
Прошу прощения, возможно, за глупый вопрос, но никак не могу найти код самих хуков… Например в файле header_top.tpl есть вывод списка меню примерно такого содержания (строки № ~20-30):
Никак не могу понять, где есть код хука этого {hook run='main_menu'}… Понял, что он подцепляет что-то типа menu.$sMenuHeadItemSelect.tpl из корня шаблона в папке skin…
хуки сами ничего не делают, все действия выполняют обработчики, которые на них вешаются
за подробной информацией в этот блог — livestreet.ru/blog/dev_documentation/
14 комментариев
comments_top — верх листа комментов
comments_bottom — низ листа комментов
comments_form_top — верх формы добавления комментария
comments_form_bottom — низ формы добавления коммента
topics_top — верх топика
topics_bottom — низ топика
+ хук для подключения JS и CSS. К примеру через плагин какой-то нужно подлючить свой JS.
Например цеплять капчу, баннеры, доп. поля, нотисы, различные уведомления и т.д…
Тогда разработчики плагинов, добавляющих свой тип топика, будут более счастливы :)
К примеру, сейчас вышел плагин биллинга и заданий, и в нем как раз вывод баланса юзера в этом меню. И получаются дубли файла header_top.tpl в плагинах.
Еще заметил, что нету хуков в месте вывода самого контента. Т.е. в header.tpl где
вот ниже него
и в footer.tpl, выше
типо
Зачем нужно? Ну, к примеру для вывода кратких новостей из плагина short news, если такой был бы))
ps/ если лишнее, извиняйте)
Никак не могу понять, где есть код хука этого {hook run='main_menu'}… Понял, что он подцепляет что-то типа menu.$sMenuHeadItemSelect.tpl из корня шаблона в папке skin…
Не подскажете, где найти код этого хука?
за подробной информацией в этот блог — livestreet.ru/blog/dev_documentation/