RU/EN

Блог

автор:

ibednov

дата:

10-07-2017

просмотров

133

рейтинг

0

Хак_1. Вывод разных шаблонов в теге "content"

В данной статье я расскажу Вам как поправить в DLE проблему вывода всех новостей под одним шаблоном на главной странице, даже если в настройках каждой категории вы указали какой .tpl файл должен отображаться.
Хак актуален на следующих версиях DLE ~9.7- 11.3.
Как было до применения хака:
Как стало после:

Процесс:
1.0. Открываем файл "show.short.php" находящийся в папке "/engine/modules" вашего движка.
1.1. Находим следующий код (~30 строка):
if( $view_template != "rss" ) {
    if( $category_id and $cat_info[$category_id]['short_tpl'] != '' ) $tpl->load_template( $cat_info[$category_id]['short_tpl'] . '.tpl' );
    else $tpl->load_template( 'shortstory.tpl' );
}
1.2. Комментим с помощью //, чтобы получилось так: 
//    if( $view_template != "rss" ) {
//        if( $category_id and $cat_info[$category_id]['short_tpl'] != '' ) $tpl->load_template( $cat_info[$category_id]['short_tpl'] . '.tpl' );
//        else $tpl->load_template( 'shortstory.tpl' );
//    }
ну или просто удаляем.

2.1. Находим (~156 строка): 
$row['category'] = intval( $row['category'] );
2.2. Снизу добавляем: 
$cat_idd = $row['category'];
if( $view_template != "rss" ) 
    {                
          if( $category_id and $cat_info[$category_id]['short_tpl'] != '' ) $tpl->load_template( $cat_info[$category_id]['short_tpl'] . '.tpl' );
        elseif( $cat_idd and $cat_info[$cat_idd]['short_tpl'] != '' ) $tpl->load_template( $cat_info[$cat_idd]['short_tpl'] . '.tpl' );
        else $tpl->load_template( 'shortstory.tpl' );
    }
 Готово.

Это всего лишь реклама :)