Внедрих 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;
}
}
Това винаги е работило за мен, но сега опитвам Smarty и не можах за цял живот да разбера как да го накарам да работи като този.
Ако някой може да ме насочи в правилната посока. Това би било страхотно.
PS. Извинявам се, ако това вече е било отговорено преди, търсих това в Google през последните 2 часа и изглежда не мога да намеря нищо. PHP уменията ми са в най-добрия случай на средно ниво.