Я реализовал smarty в своей установке CI с помощью этого руководства: http://www.coolphptools.com/codeigniter-smarty
Он работает нормально, за исключением того, что верхний и нижний колонтитулы загружаются путем включения файлов из шаблона.
ie.
{include file="header.tpl" title="Example Smarty Page" name="$Name"}
...
{include file="footer.tpl"}
Есть ли способ загрузить их из контроллера или из класса библиотеки Smarty?
Чтобы дать более ясный пример того, что я хочу; Без механизма шаблонов я бы просто расширил метод view
через собственный загрузчик.
eg.
class MY_Loader extends CI_Loader {
function view( $template, $data = array(), $return = false ) {
$content = parent::view( 'header', $data, $return );
$content .= parent::view( $template, $data, $return );
$content .= parent::view( 'footer', $data, $return );
if( $content )
return $content;
}
}
Это всегда работало для меня, но теперь я пробую умный, и я не мог в жизни понять, как заставить его работать так, как этот.
Если бы кто-нибудь мог указать мне правильное направление. Это было бы здорово.
PS. Извиняюсь, если на этот вопрос уже был дан ответ, я гуглил это последние 2 часа и ничего не нашел. Мои навыки работы с PHP в лучшем случае средние.