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

Как исключить категорию из xfsearch?


     17.03.2019    xfsearch, доп поля, исключить категорию    Все вопросы » Хаки    1389

вопрос
Привет!
Как сделать так, чтобы новости в которых проставлена категория "Анонсы" не выводились на странице дополнительного поля с годом - site.com/xfsearch/year/2019/ ?
Т.е. мне нужно исключить одну из категорий в доп. поле год.

Вот был такой хак, который исключал категорию из {link-category}. Вот так:
В engine/modules/show.full.php
Найти:
foreach ( $cat_list as $element ) {

Заменить:
if(in_array($element,array(24))) continue;


Может есть что-нибудь похожее для доп. полей?

Ответил: Flash


В файле /engine/engine.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}p.id IN {$xf_array} AND p.approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
добавить
$cats_list = array(8);

if ($config['allow_multi_category']) {
	$stop_list = "category NOT REGEXP '[[:<:]](" . implode ( '|', $cats_list ) . ")[[:>:]]' AND ";
} else {
	$stop_list = "category NOT IN ('" . implode ( "','", $cats_list ) . "') AND ";
}

где 8 - номер исключаемой категории, если категорий несколько - указываем их через запятую.
Отредактировал 19-03-2019, 11:07 - Flash

2 комментария

RedFox
Юзер

RedFox - 19 марта 2019 09:32 -

FLASH, спасибо за отклик и решение. Работает, но с точностью до наоборот, исключились все категории, кроме 8)

Flash
Эксперт

Flash - 19 марта 2019 11:10 -

Извиняюсь, надо добавить "NOT" в запросах, исправил ответ. Когда проверял - добавил код, убедился, что одна новость исчезла из результатов по /xfsearch/year/2019/, а какая у нее категория - не посмотрел)

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

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

наверх