Подскажите пожалуйста, как организовать подключение модулей в шаблон.
Ну к примеру есть div в самом верху сайта - на всю ширину. Сегодня написал модуль авторизации, который выводит либо поля авторизации, либо приветствие. В шаблоне проинклюдил файл модуля авторизации, а этот файл уже определяет какой файлик с куском html вывести - форму или приветствие.
А вот если я захочу к примеру вставить в этот div форму поиска, то нужно будет руками проинклюдить файл модуля поиска в шаблон.
Как сделать так, чтобы в шаблоне были некие метки, на места которых будут загружаться определенные модули (меню, баннеры, поиск, авторизация, статьи, комментарии....)?
Можно конечно все проинклюдить руками, но как бы это реализовать в админке, чтобы не было никаких include_once в самом html шаблоне?
(Добавление)
ЗЫ
Наверное нужно смотреть в сторону DOMDocument? Или нет?
1. Hapson - 28 Июля, 2013 - 19:56:43 - перейти к сообщению
2. DeepVarvar - 28 Июля, 2013 - 20:36:44 - перейти к сообщению
Нужно смотреть в сторону str_replace() этих самых меток.
Ну а как в админке эти метки будут выглядет - не важно.
Как вариант в админку - показывать "карту" лайоута в которой на возможных местах появления модулей будут висеть выпадающие списки всех доступных модулей, с возможностью множественного выбора.
Ну а как в админке эти метки будут выглядет - не важно.
Как вариант в админку - показывать "карту" лайоута в которой на возможных местах появления модулей будут висеть выпадающие списки всех доступных модулей, с возможностью множественного выбора.
3. caballero - 28 Июля, 2013 - 20:45:13 - перейти к сообщению
делать это в админке означает повторять функционал джумлы что глупо.
а зачем это вообще в админке? ты что каждый день на сайте будешь модули менять?
а зачем это вообще в админке? ты что каждый день на сайте будешь модули менять?
4. Hapson - 28 Июля, 2013 - 20:45:50 - перейти к сообщению
DeepVarvar пишет:
Нужно смотреть в сторону str_replace() этих самых меток.
Ну а как в админке эти метки будут выглядет - не важно.
Как вариант в админку - показывать "карту" лайоута в которой на возможных местах появления модулей будут висеть выпадающие списки всех доступных модулей, с возможностью множественного выбора.
Ну а как в админке эти метки будут выглядет - не важно.
Как вариант в админку - показывать "карту" лайоута в которой на возможных местах появления модулей будут висеть выпадающие списки всех доступных модулей, с возможностью множественного выбора.
Что-то я не соображу...
Вот например
CODE (html):
скопировать код в буфер обмена
скопировать код в буфер обмена
- <!DOCTYPE HTML>
- <html>
- <head>
- <title></title>
- <meta http-equiv="Content-Language" content="ru" />
- <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
- <body>
- <div id="header">
- <div id="top_line">
- <include name="top_line">
- </div>
- </div>
- </body>
- </html>
Вот на место <include name="top_line"> вставлять один или несколько модулей. Я понимаю что делает str_replace(), но что-то не соображу.
(Добавление)
caballero пишет:
делать это в админке означает повторять функционал джумлы что глцпо.
а зачем это вообще в админке? ты что каждый день на сайте будешь модули менять?
а зачем это вообще в админке? ты что каждый день на сайте будешь модули менять?
Каждый день не буду. Я собственно не облезу, если руками в шаблоне пропишу. Просто хочется как-то облагородить это дело.
(Добавление)
ЗЫ
К тому же сегодня столкнулся с проблемой. Сначала подключил модуль авторизации прямо в шаблон. А при авторизации ставятся куки. Ну так получилось, что ставились они до вывода. А вот если подключить какой-то вывод перед модулем авторизации (к примеру форму поиска), то уже косяк.
Пришлось подключить модуль авторизации до подключения шаблона, а в шаблоне инклюдить нужные куски html с подстановкой значения в путь через переменную, которая определяется в файле авторизации.