Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Шаблоны (TPL) » Как создать для отдельной страницы отдельный дизайн

Как создать для отдельной страницы отдельный дизайн


     Шаблоны (TPL), Ламерские вопросы    2935

вопрос
Всем доброго времени суток. Ребята, очень нужна ваша помощь.
Проблема следующая. Нужно сделать для отдельной страницы сайта отдельный вывод новостей, скажем кругом на сайте выводит новость блоком, а здесь нужна строчка при переходе в соответствующую категорию. Но нужно кроме этого, ещё добавить на эту страницу несколько блоков, то есть страница должна быть такой же редактируемой как и main.tpl. Плюс к этому при добавлении из админки новости в эту категорию должно появляться оформление конкретно строчкой.
Давно не работал с dle, много обновлений пропустил. Спасибо всем, кто отзовётся и поймёт про что я:)

Ответил: Elena


Может так?

Открыть индекс.пхп и заменить
$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 категории.

11 комментариев

skinny
Юзер

skinny - -

ну тебе сюда тык

Xactip
Юзер

Xactip - -

спасибо большое, ответ по теме

disazakon
Юзер

disazakon - -

Тоесть чтобы на 1 категории были эти блоки на другой нет?
через
[aviable]

[/aviable]
если я правильно понял можно это реализовать.

Xactip
Юзер

Xactip - -

да, чтобы в этой категории оформление shortstory было совсем другим.. ну и плюс нужно в этом разделе добавить только для этой категории поиск по некоторым критериям.

Elena
Юзер

Elena - -

***Комментарий удален***

Xactip
Юзер

Xactip - -

то есть если категория у меня с id 2, то файл tpl Должен выглядеть main_2.tpl ? А в коде где-то id Нужно указывать?

Elena
Юзер

Elena - -

не с ид, а название категории.
main_category_name.tpl

В коде не нужно))

Xactip
Юзер

Xactip - -

то бишь если avtobusnye-tury название категории, то main_avtobusnye-tury.tpl?
а в этот файл копировать всё что в main.tpl? Ведь я по сути хочу лишь изменить вывод shortstory и вверху вывода добавить окно с поиском..

Elena
Юзер

Elena - -

Да...

Xactip
Юзер

Xactip - -

Спасибо за то что помогли! Спасибо за терпение.

Elena
Юзер

Elena - -

Та не за что) Есть кнопка +

Похожие вопросы

наверх