Кирпичшн
Guest
Компонентная модель [Smarty]
В пятьнадцатом Инсайде была статья "Смарти -- не только шаблоны". Стало интересно -- захотелось попробовать )) Тем более что с шаблонкой не давно познакомился )) Написал пример. Не работает -- в smarty_fuction_component при проверке is_file выдает, что компонента нет... Казалось бы ясно где ошибка и что с ней делать... После суток все возможных извращений и тестов -- результат ноль.
Может быть все таки ошибка в другом месте?
index.php :
function.component.php
В пятьнадцатом Инсайде была статья "Смарти -- не только шаблоны". Стало интересно -- захотелось попробовать )) Тем более что с шаблонкой не давно познакомился )) Написал пример. Не работает -- в smarty_fuction_component при проверке is_file выдает, что компонента нет... Казалось бы ясно где ошибка и что с ней делать... После суток все возможных извращений и тестов -- результат ноль.
Может быть все таки ошибка в другом месте?
index.php :
PHP:
<?php // 12:14 24.11.2005
define('DIR_SMARTY', '_smarty');
define('DIR_CACHE', '_cache');
define('DIR_CONGIGS', '_configs');
define('DIR_TEMPLATES', '_templates');
define('DIR_COMPILE', '_templates_c');
require_once DIR_SMARTY.'/Smarty.class.php';
$smarty = new Smarty;
$smarty->template_dir = $DOCUMENT_ROOT.'/'.DIR_TEMPLATES;
$smarty->compile_dir = $DOCUMENT_ROOT.'/'.DIR_COMPILE;
$smarty->config_dir = $DOCUMENT_ROOT.'/'.DIR_CONGIGS;
$smarty->cache_dir = $DOCUMENT_ROOT.'/'.DIR_CACHE;
$smarty->force_compile = true;
$smarty->caching = false;
$smarty->display('default.tpl');
?>
PHP:
<?php // 12:44 24.11.2005
function smarty_function_component($param, &$smarty) {
if (empty($param['name'])) {
$param['name'] = 'default';
}
if (is_file('_components/'.$param['name'].'component.php')) {
require_once '_components/'.$param['name'].'component.php';
} else {
echo "КОМПОНЕНТ НЕ НАЙДЕН";
}
}
?>