loading...

Авторизация ...

Имя пользователя :
Пароль :
я всё забыл!

ХакиВывод в каждой категории свой топ новостей

Написал nikolas22, 15 августа 2011 | 11 комментариев | рейтинг новости не нравится   +5   нравится Версия для печати
Вывод в каждой категории свой топ новостей


Хак выводит в каждой категории топ новостей только той категории в которой вы находитесь сейчас. Учитуются также подкатегории, если таковы есть
Для работы хака правим файл /engine/modules/topnews.php

if ($category_id) {

                if ($config['show_sub_cats']) $get_cats = get_sub_cats($category_id);
                else $get_cats = $category_id;
        
        
    if ($config['allow_multi_category']) $where_category = "category regexp '[[:<:]](" . $get_cats . ")[[:>:]]'";
    else {
            if ($config['show_sub_cats']) {
                    $get_cats = str_replace ( "|", "','", $get_cats );
                    $where_category = "category IN ('" . $get_cats . "')";
                } else $where_category = "category = '{$get_cats}'";
            
         }
}


Дальше в запрос
$db->query( "SELECT id, title, date, alt_name,short_story, category, flag FROM " . PREFIX . "_post WHERE approve='1'  AND date >= '$this_month' - INTERVAL 12 MONTH AND date < '$this_month' ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,9" );


Меняем на
if ($where_category !='') $where_category ='AND '.$where_category;
    $db->query( "SELECT id, title, date, alt_name,short_story, category, flag FROM " . PREFIX . "_post WHERE approve='1' {$where_category} AND date >= '$this_month' - INTERVAL 12 MONTH AND date < '$this_month' ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,9" );


И в финале осталось подправить запись и чтение с кеша. Итак меняем строчку
$topnews = dle_cache( "topnews", $config['skin'] );


На

$topnews = dle_cache( "topnews-".$category_id, $config['skin'] );


И также меняем запись в кеш. Вот эту строчку

create_cache( "topnews", $topnews, $config['skin'] );


Меняем на

create_cache( "topnews-".$category_id, $topnews, $config['skin'] );


Пользуемся.
Пример работы хака можна увидеть на портале Штепина


Отблагодарили: pavel31, kaba, baraban

Комментарии пользователей

  Экспорт комментариев в RSS
 Сортировать по рейтингу, по дате

Написал pervo, 16 августа 2011 в 20:09 плохой комментарий   -2   хороший комментарий
Новостей: 0, комментариев: 3, Пользователи
Карма:
а стандартными custom category уже ни как не далеться ?

Написал nikolas22, 16 августа 2011 в 21:50 плохой комментарий   0   хороший комментарий
Новостей: 13, комментариев: 79, Пользователи
Карма: -1±
Цитата: pervo
а стандартными custom category уже ни как не далеться ?

это как?

Написал maxic, 17 августа 2011 в 03:29 плохой комментарий   -2   хороший комментарий
Новостей: 7, комментариев: 115, Пользователи
Карма:
В мануале всё описано. тег {custom}. можно настроить id категории, количество записей, сортировку, кэш

Написал x-zone-x, 17 августа 2011 в 10:04 плохой комментарий   0   хороший комментарий
Новостей: 1, комментариев: 42, Пользователи
Карма:
Так что тогда придется для каждой категории свой {custom} ставить? или если я поставлю
{custom category="2,7" template="custom" aviable="global" from="0" limit="10" cache="yes"}
и зайду в категорию 7 то не будет там выводить категорию 2?

Написал aqula, 17 августа 2011 в 10:31 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 15, Пользователи
Карма:
Актуально. Как сделать чтоб {custom} выводил сгруппированные новости скажем по 5 из каждой категории? Или он так и делает, не работал с ним.

Написал nikolas22, 17 августа 2011 в 10:58 плохой комментарий   0   хороший комментарий
Новостей: 13, комментариев: 79, Пользователи
Карма: -1±
custom никогда топ не выводил, а выводил определенные новости с определенных категорий.

Написал aqula, 17 августа 2011 в 11:51 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 15, Пользователи
Карма:
добавлю что если написать
{custom category="2,7" template="custom" aviable="global" from="0" limit="10" cache="yes"}
то он выведет 10 новостей лишь из 2ой категории а седьмая останется неудел.
А надо 5+5. Вот как это сделать?

кста с 8 до последней версии были ли какие изменения касаемые {custom} ?

Написал n0wheremany, 18 августа 2011 в 07:03 плохой комментарий   0   хороший комментарий
Новостей: 10, комментариев: 107, Пользователи
Карма:
Он выводит не 10 со 2 а последние 10 из 2 или 7. Если надо раздельно делайте 2 кастома

Написал ImDim, 27 декабря 2011 в 20:19 плохой комментарий   +1   хороший комментарий
Новостей: 0, комментариев: 5, Пользователи
Карма:
А разве {custom} топ новостей выводит an

Написал TaP3aH, 11 января 2012 в 05:18 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 26, Пользователи
Карма:
custom выводит последние новости а не топ, как бы так...

Написал mabilko, 4 февраля 2012 в 15:36 плохой комментарий   0   хороший комментарий
Новостей: 0, комментариев: 2, Пользователи
Карма:
Как сделать что бы в полной новости тоже работало? В полной новости показывает только общий топ со всех категорий, а хотелось бы что бы показывался топ категории в которой находится новость.

Информация



Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
Анализ Тиц и PR сайта

[removed][removed] [removed] (adsbygoogle = window.adsbygoogle || []).push({}); [removed]