Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Шаблоны (TPL) » Как исключить определённую категорию из favorites?

Как исключить определённую категорию из favorites?


     04.02.2019    закладки, категории    Шаблоны (TPL), Хаки    1054

вопрос
Как сделать чтобы в закладках пользователя не отображались новости например из категории с номером id 12?
Пробовал в shortstory так:
[not-catlist=12] код [/not-catlist]
Работает в принципе, но есть минус, новости из 12 категории всё равно занимают пространство и получается образуются пустые места и сбивается количество новостей. Ну вот кароче на скрине понятнее видно:

Как исключить определённую категорию из favorites?

Ответил: PunPun


/engine/modules/favorites.php найти
if( $not_allow_cats[0] != "" ) {
Выше вставить
$not_allow_cats[] = 12;

1 комментарий

Bashmak
Юзер

Bashmak - 4 февраля 2019 22:06 -

Не работает.

Вот рабочий вариант:

engine/modules/favorites.php найти запросы
$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}id in $favorites " .$order_list . "LIMIT " . $cstart . "," . $config['news_number'];
$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post where {$stop_list}id in {$favorites}";


и заменить на
$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}id in $favorites  AND category NOT regexp '[[:<:]](1|2|3)[[:>:]]' " .$order_list . "LIMIT " . $cstart . "," . $config['news_number'];
$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post where {$stop_list}id in {$favorites}  AND category NOT regexp '[[:<:]](1|2|3)[[:>:]]'";


1|2|3 - исключаемые категории.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

наверх