Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: CMS - использование шаблонов
 
 автор: podpole   (27.03.2007 в 19:36)   письмо автору
 
 

Здравствуйте! Я пишу CMS, и мне хотелось бы реализовать в ней систему смены шаблона. И чтобы шаблоны к моей CMS могли делать обычные пользователи не имеющие никаких познаний в программировании.
Я уже наметил некоторые пути создания такой системы, но меня они немного не устраивают. Допустим пользователь делает шаблон, и картинки складвает в папку img/ , при использовании функци require, require_once и подобных, к index присоединяеться этот файл шаблона, и картинки не згрузяться, т.к. путь до картинок будет: http://sitename.ru/img/1.jpg или /img/.jpg, но в любом случае неверный, а должен быть такой: http://sitename.ru/tpl/nametpl/img/1.jpg.
Для этого перед /img/1.jpg я предусмотрел вставку кода <? print "$tpl_put"; ?> и в файле index.php уже определить путь к шаблону, но меня не устраивает количествао символов этого вставляемого кода (т.е. он не красивый) и я хотел чтобы он выглядил так [tpl_put] или {tpl_put} или просто tpl_put без всяких там <??> print(); и т.п. Я пытался подключать шаблон загружая его, и даже гдето видел функцию вот такого вида: $bla-bla=<<<HTML <html><head><title>{$title}</title> HTML;
И получаеться что в {} вставляеться php код, но у меня ничего не получилось. Подскажите ктонибудь! Может тут есть более опытные! Спасибо!

   
 
 автор: golovdinov   (27.03.2007 в 20:17)   письмо автору
 
   для: podpole   (27.03.2007 в 19:36)
 

Если вы используете чистый PHP для подстановки переменных, то {tpl_put} заменить никак нельзя. для этого нушно использовать какой-либо шаблонизатор, где в шаблонных файлах будет храниться чистый HTML код, а переменные будут иметь вид {tpl_put} и в процессе заменяться чем-либо.

   
 
 автор: podpole   (27.03.2007 в 23:31)   письмо автору
 
   для: podpole   (27.03.2007 в 19:36)
 

Ну само собой шаблон из чистого html. Вот про шаблонизатор поподробнее пожалуйста. Я с этим понятием ещё не сталкивался! Можно пример какойнибудь? Просто очень надо!
Зарание спасибо!

   
 
 автор: NovikovMA   (27.03.2007 в 23:38)   письмо автору
 
   для: podpole   (27.03.2007 в 19:36)
 

ну, как я понял, тебе просто не нравится, что есть print();, ну тогда пиши просто <?=$tpl_put;?>
Это вроде красивее выглядит.

А вообще что, пользователь сам создает шаблон?

И вообще часто с таким сталкиваюсь, что с начала продумываешь систему, начинаешь делать, а в конце находишь какую-нить проблему и приходится или переделывать или извращаться ))

   
 
 автор: podpole   (28.03.2007 в 07:30)   письмо автору
 
   для: podpole   (27.03.2007 в 19:36)
 

Мне не нравиться не только print(); но и <??>. Хочеться чтобы для пользователя было всё удобно и понятно, без лишнего гемороя... Я ещё пробывал открывать файл и пользоваться str_replase(); где пытался заменить [tpl_put] на нужный код, но он почемуто е менялся... Придёться ещё чтото думать....

   
 
 автор: elrevin   (28.03.2007 в 09:02)   письмо автору
 
   для: podpole   (28.03.2007 в 07:30)
 

Вот накатал кой чего, думаю поможет - http://www.webos.isrv.ru/sct/1/wa_id/31

   
 
 автор: podpole   (28.03.2007 в 10:45)   письмо автору
 
   для: elrevin   (28.03.2007 в 09:02)
 

Спасибо! Наверное это то что нужно! Хотя хотелось ещё более коротко...

   
 
 автор: elrevin   (28.03.2007 в 10:57)   письмо автору
 
   для: podpole   (28.03.2007 в 10:45)
 

В статье короче не куда, только принцип описан...

   
 
 автор: KPETuH   (28.03.2007 в 11:12)   письмо автору
 
   для: elrevin   (28.03.2007 в 10:57)
 

Проверь у ся на сайте систему коментариев почему то мое сообщение удвоилось :)

   
 
 автор: Loki   (28.03.2007 в 11:52)   письмо автору
 
   для: podpole   (27.03.2007 в 19:36)
 

если мануал по php не помогает, значит пришло время начинать учить html

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования