Составление страницы из блоков

ArtyGrand

Постоялец
Регистрация
6 Июн 2009
Сообщения
78
Реакции
37
Как в шаблоне(шкурке) можно автоматически заменять метки вида [блок1], [блок2] на содержимое файлов блок1.php, блок2.php, будь то просто текст или любой php код, при этом код должен выполниться.

я написал код, который только текст переносит, но как сделать, что бы и функции разные выполнялись тоже?
PHP:
if (preg_match_all('/{iblock:(.+)}/', $page, $matches)){
    for ($i = 0; $i <= count($matches[1])-1; $i++){
        $block_content = file_get_contents('./system/iblocks/'.$matches[1][$i].'.php');
        $page = str_replace($matches[0][$i],$block_content,$page);
    }
}

всяко разно извращался, но написал, хотя для php кода мне равно надо писать в файлах $block_content = функция такая то.

а как можно это обойти и писать, допустим, просто echo переменная полученная от функции; ?
 
так попробуй
PHP:
if (preg_match_all('/{iblock:(.+)}/', $page, $matches)){
  for ($i = 0; $i <= count($matches[1])-1; $i++){ 
    ob_start(); 
    include ('./system/iblocks/'.$matches[1][$i].'.php');
    $content2 = ob_get_contents();
    ob_end_clean(); 
    $page = str_replace($matches[0][$i],$content2,$page);
  }
}

а вторую часть ( ту что после кода ) непонял
 
Ещё посмотрите шаблонизатор smarty.net
Там много дополнительного функционала, который может понадобится, когда захочется расширить возможности блоков.
 
пока моя cms не будет весить больше чем фреймворк или шаблонизатор, не буду использовать подобного.
 
Тут человек рассказывает о создании простого шаблонизатора. Может то что вас интересует.
Есть даже видео.
Для просмотра ссылки Войди или Зарегистрируйся
Вот тут очень интересно сделано с использованием комментариев HTML
Для просмотра ссылки Войди или Зарегистрируйся
 
Назад
Сверху