Category Related News

Рубрика: Хаки для DLE » Хак DLE 11.2, 11.1, 11.0, 10.6, 10.5, 10.4, 10.3, 10.2, 10.1, 10.0, 9.8, 9.7, 9.6, 9.5, 9.4, 9.3, 9.2, 9.0
Category Related News
Представляем новый хак дле Category Related News, который удобен и прост в установке, позволяет выводить похожие новости только из определенных категорий, где расположена просматриваемая новость. И это логичная функция, вместо вывода из всех категорий на сайте. Итак, представляем на dle9.com из рубрики хаки для DLE похожие новости только из одной категории под названием Category Related News для DLE 9.6 и 9.7.

Краткое описание, если новость расположена в категории «Фильмы»->«Мультфильмы», то в ней похожие новости будут браться только из категории «Фильмы» и всех подкатегорий данной категории и новости из других категорий, например Музыка, Программы и т.д., выводится не будут в категории фильмов.

Category Related News


Внимание! Так как делал для себя, то хак рабочий только на версиях DLE 9.6 и 9.7.



Установка:
1. Файл: /engine/modules/show.full.php
Найти:
                    $allowed_cats = array();
    
                    foreach ($user_group as $value) {
                        if ($value['allow_cats'] != "all" AND !$value['allow_short'] ) $allowed_cats[] = $db->safesql($value['allow_cats']);
                    }
    
                    if (count($allowed_cats)) {
                        $allowed_cats = implode(",", $allowed_cats);
                        $allowed_cats = explode(",", $allowed_cats);
                        $allowed_cats = array_unique($allowed_cats);
                        sort($allowed_cats);
    
                        if ($config['allow_multi_category']) {
                            
                            $allowed_cats = "category regexp '[[:<:]](" . implode ( '|', $allowed_cats ) . ")[[:>:]]' AND ";
                        
                        } else {
                            
                            $allowed_cats = "category IN ('" . implode ( "','", $allowed_cats ) . "') AND ";
                        
                        }
                    } else $allowed_cats="";


Заменить на:

                    $cat_array = array();
                    foreach($cat_list as $post_cat) {
                        $cat_array = array_unique( array_merge( $cat_array, explode( '|', get_sub_cats( $cat_info[$post_cat]['parentid'] ) ) ) );
                    }
                    if($config['allow_multi_category']) {
                        $allowed_cats = "category regexp '[[:<:]](". implode( '|', $cat_array ) .")[[:>:]]' AND ";
                    } else {
                        $allowed_cats = "category IN ('". implode( ',', $cat_array ) ."') AND ";
                    }

2. Выполнить запрос в MySQL:
UPDATE  `dle_post_extras` SET  `related_ids` =  ""


3. Очистить кеш в админке DLE.

Инструкция в текстовом варианте:

* Внимание! Это инструкция по изменению логики работы стандартной функции вывода похожих новостей! Она не включает в себя инструкцию по оформлению вывода похожих новостей как на скриншоте!
Хак для Dle Category Related News похожие новости только из одной категории.
Автор: MSW 0-web ru
Версия datalife engine: 9.7-9.6

Ознакомится с установку в текстовом файле
  • 100
Рубрика: DLE хаки » Хак для DLE
Ранее » AdequateBBcode Улучшенный bbcode-редактор для DLE« Далее Хаки ДЛЕ исправляем ББ-коды в имени спойлера
Добавление комментарияОставить комментарий
  • № :4
  • 21 августа 2013 03:16
на 9.8 будет работать?
  • № :3
  • 26 мая 2013 19:34
на 9.8 будет работать?
  • № :2
  • 21 февраля 2013 16:25
dadjo,
Админ панель

Перестроение публикаций там можно переписать кеш ...может в этом дело
  • № :1
  • 21 февраля 2013 16:14
что то у меня ничего не поменялось, как был список, так и остался... belay