Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

DROG888

про движок DLE.

Рекомендованные сообщения

Как сделать, чтобы в topnews (популярные новости) отображались только новости определенной категории, а не все новости сайта?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добавить условие с определенным ID категории в запрос скрипта /engine/modules/topnews.php

 

У меня (7.5) там такой запрос

$db->query( "SELECT id, title, date, alt_name, category, flag FROM " . PREFIX . "_post WHERE approve='1' AND date >= '$this_month' - INTERVAL 1 MONTH AND date < '$this_month' ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,10" );

 

Добавим условие категории

 

$db->query( "SELECT id, title, date, alt_name, category, flag FROM " . PREFIX . "_post WHERE approve='1' AND category='1' AND date >= '$this_month' - INTERVAL 1 MONTH AND date < '$this_month' ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,10" );

 

Где 1 - id категории (можно посмотреть в БД в таблице dle_category)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо, все работает.

Только вот еще одна появилась проблема. Моя основная категория ( id 2) содержит подкатегории, и у них id уже другие. Надо чтобы тогда несколько категорий было в ТОП. ???

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тогда перечисли условия для каждого id:

 

$db->query( "SELECT id, title, date, alt_name, category, flag FROM " . PREFIX . "_post WHERE approve='1' AND category='1' OR category='2' OR category='3' AND date >= '$this_month' - INTERVAL 1 MONTH AND date < '$this_month' ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,10" );

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах