Вот код:
//Подключение файлов
@include('/engine/data/db_config.php');
@include('/engine/themes.class.php');
@include('/engine/data/config.php');
// Шаблонизатор
$tpl = new Template; //инициируем класс
$tpl->dir = ROOT_DIR.'themes/default/'; //задаём местоположение папки с шаблонами
$tpl->load_template('main.tpl'); //загружаем каркас
$tpl->set('{home}', $tpl->sub_load_template('home.tpl'));
$tpl->set('{about}', $tpl->sub_load_template('about.tpl'));
function content()
{
$about = $_GET['page'];
switch ($about):
default:
$home = include '/themes/default/home.tpl';//Если главная страница, то подгружать home.tpl
echo $home;
break;
case "about":
$about1 = include '/themes/default/about.tpl';
echo $about1;
break;
case "portfolio":
echo "Здесь будет портфолио";
endswitch;
}
$content = content();
//подставляем значения переменных
$tpl->set('{title}', SITE_NAME);
$tpl->set('{THEME}', ROOT_HOST.'/themes/default');
$tpl->set('{content}', $content);
$tpl->compile('main'); //собираем шаблон
eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php '); //выводим результат работы, с возможностью вставки пхп кода в tpl
$tpl->global_clear(); //очищаем все переменные для возможно следующего шаблона
Нужно заставить выводиться шаблоны, которые в switch-case, через тег {content}. помогите пожалуйста.
Спустя 11 часов, 20 минут, 2 секунды (26.08.2012 - 12:05) T1grOK написал(а):
Примерно так, если конечно правильно понял.
Только с путями нужно будет разобраться, если для этого шаблонизатор DLE использует свою настройку.
function content()
{
GLOBAL $tpl;
$about = $_GET['page'];
switch ($about):
default:
$template = '/themes/default/home.tpl';//Если главная страница, то подгружать home.tpl
break;
case "about":
$template = include '/themes/default/about.tpl';
break;
case "portfolio":
$template = "Здесь будет портфолио"; //Здесь так понимаю тоже будет шаблон, так что не сочтите за ошибку
endswitch;
return $tpl->sub_load_template($template);
}
Только с путями нужно будет разобраться, если для этого шаблонизатор DLE использует свою настройку.
Спустя 4 часа, 50 минут, 22 секунды (26.08.2012 - 16:55) Shkiper написал(а):
SAHER код с дле копировал ??
Спустя 6 часов, 43 минуты, 27 секунд (26.08.2012 - 23:38) SAHER написал(а):
Shkiper Нужен был мне шаблонизатор, много гуглил и нашел шаблонизатор свинченый с DLE и поставил.
Спустя 2 дня, 16 часов, 26 минут, 58 секунд (29.08.2012 - 16:05) SAHER написал(а):
T1grOK Спасибо, работает=)
Спустя 6 часов, 7 минут, 48 секунд (29.08.2012 - 22:13) SAHER написал(а):
Извините, еще один вопрос назрел, как вместо tpl файла вставить какой-нибудь php файл? Шаблонизатор ошибку выдает если вставить.
Делал вот так:
А оно нужную мне информацию из файла show.php выводит не через тег {content}, а в самом верху кода. Помогите пожайлуйста.
Делал вот так:
function content()
{
GLOBAL $tpl;
GLOBAL $module;
$about = $_GET['page'];
switch ($about):
default:
$template = '/themes/default/home.tpl';//Если главная страница, то подгружать home.tpl
break;
case "about":
$template = include '/themes/default/about.tpl';
break;
case "portfolio":
$module = include 'путь/путь/путь/show.php';
endswitch;
return $module;
return $tpl->sub_load_template($template);
}
А оно нужную мне информацию из файла show.php выводит не через тег {content}, а в самом верху кода. Помогите пожайлуйста.