Что нового

в категории подгружался определенный main.tpl (1 Viewer)

Статус
Закрыто для дальнейших ответов.
R

Rap_Woyska

Гость
как сделать чтоб в категории подгружался определенный main.tpl ?
 
В настройках категории можно установить полностью другой шаблон. Можно скопировать имеющийся шаблон и там изменить main.tpl
 
funvaz,такой вариант не подходит т.к. таких категорий 8
 
Нашел такие способы: Показать / Скрыть текст1-й способв index.phpВместо:$tpl->load_template ( 'main.tpl' );прописать:$f_ = ($newsid !== 0) ? //Если вывод конкретной новости в полном формате'main_' . $cat_info[$category_id]['alt_name'] . '.tpl' : //То берем ее шаблон(($do == 'cat') ? 'main_' . $category . '.tpl' : 'main.tpl' ); //Если вывод категории, то берем ее шаблон, иначе - основнойif (file_exists(TEMPLATE_DIR . '/'. $f_)) { //Есть файл шаблона для конкретной категории$catTemplate = $f_;}else{//Нет файла шаблона для конкретной категории, припишем родительский шаблон (если у нас ПОДкатегория)$parentid_ = $cat_info[$category_id]['parentid'];$alt_name_cat_ = $cat_info[$parentid_]['alt_name'];while (isset($alt_name_cat_)) //Есть имя, т.е. не вамый верх!{if (isset ($alt_name_cat_)&file_exists(TEMPLATE_DIR . '/'. 'main_' . $alt_name_cat_ . '.tpl')) {$catTemplate = 'main_' . $alt_name_cat_ . '.tpl';break;}else{$parentid_ = $cat_info[$parentid_]['parentid'];$alt_name_cat_ = $cat_info[$parentid_]['alt_name'];}}}$catTemplate = isset ($catTemplate)&&(file_exists(TEMPLATE_DIR . '/'. $catTemplate)) ? $catTemplate : 'main.tpl'; //Проверим присутствие файла шаблона$tpl->load_template ( $catTemplate );Персональный шаблон для категории должен находиться в папке шаблона и иметь имя: main_cat.tpl, где cat - url категории.2-й способнемного другой код в index.phpВместо:$tpl->load_template ( 'main.tpl' );прописать:$catTemplate = ($do == 'cat') ? $category.'_' : '';if (file_exists(TEMPLATE_DIR . '/'. $catTemplate.'main.tpl')) {$tpl->load_template ( $catTemplate.'main.tpl' );} else {$tpl->load_template ( 'main.tpl' );}оптимизированный код:$f_ = 'main_' . $category . '.tpl';$catTemplate = ($do == 'cat')&(file_exists(TEMPLATE_DIR . '/'. $f_)) ? $f_ : 'main.tpl';$tpl->load_template ( $catTemplate );и для каждой категори файл шаблона должен быть вида cat_main.tpl, где cat - url категории3-й способ:Создаем копию main.tpl с именем main_main.tpl.В main.tpl вставляем:[not-category=6,7,8,9,10]{include file="main_main.tpl"}[/not-category][category=6]{include file="main_6.tpl"}[/category][category=7]{include file="main_7.tpl"}[/category][category=8]{include file="main_8.tpl"}[/category][category=9]{include file="main_9.tpl"}[/category][category=10]{include file="main_10.tpl"}[/category]4-ый способ:в index.phpв местоPHP:$tpl->load_template ( 'main.tpl' );пролписалPHP:if($_GET['do']=='feedback' OR $_GET['do']=='cat' and $_GET['category']=='video'OR $_GET['do']=='cat' and $_GET['category']=='photo'OR $_GET['do']=='cat' and $_GET['category']=='uslugi'){if($_GET['do']=='feedback') $tpl->load_template ( 'main_feedback.tpl' );if($_GET['category']=='video') $tpl->load_template ('main_video.tpl');if($_GET['category']=='photo') $tpl->load_template ('main_photo.tpl');if($_GET['category']=='uslugi') $tpl->load_template ('main_uslugi.tpl');}else{$tpl->load_template ( 'main.tpl' );}Не знаю, рабочие или нет, так как сам не использовал их.
 
Цитата: Rap_Woyskaакой вариант не подходит т.к. таких категорий 8для категории можно указать любой .tpl
 
Цитата: trolbдля категории можно указать любой .tplуказать tpl для категории можно только для шаблонов fullstory и shortstory
 
Статус
Закрыто для дальнейших ответов.

Пользователи, просматривающие данную тему

Верх