Перейти к публикации

Исключение категории из поиска


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

Нужно, чтобы публикации из одной категории не присутствовали в поисковой выдаче DLE. В настройках категории пункта "исключить из поиска" нет. Как реализовать задачу?

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

Нужно, чтобы публикации из одной категории не присутствовали в поисковой выдаче DLE. В настройках категории пункта "исключить из поиска" нет. Как реализовать задачу?

[catlist] в помощь: http://dle-news.ru/extras/online/all16.html

я себе так делал.

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

Нужно, чтобы публикации из одной категории не присутствовали в поисковой выдаче DLE. В настройках категории пункта "исключить из поиска" нет. Как реализовать задачу?

[catlist] в помощь: http://dle-news.ru/extras/online/all16.html

я себе так делал.

Сначала показалось что помогло добавление вот этого кода в форму поиска. Но оказалось, что не всё так просто. Что добавить в этот код, чтобы исключить поиск по конкретной категории? Или этот код не поможет и правки нужно вносить в search.php?

<input type="hidden" name="catlist[]" value="id">
 
Изменено пользователем trianon14
Ссылка на сообщение
Поделиться на других сайтах
// Проверка разрешенных категорий из списка выбранных категорий
			$allow_cats = $user_group[$member_id['user_group']]['allow_cats'];
			$allow_list = explode( ',', $allow_cats );
			$stop_list = "";
			if( $allow_list[0] == "all" ) {
				// Все категории доступны для группы
				if( $category_list == "" or $category_list == "0" ) {
					// Выбран поиск по всем категориям
					;
				} else {
					// Выбран поиск по некоторым категориям
					$stop_list = str_replace( ',', '|', $category_list );
				}
			} else {

Видимо, где-то в этом куске кода search.php нужно правки делать, чтобы исключить одну из категорий из поиска по сайту. Прошу помочь.

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

Нашёл в сети ещё вот такой вариант, но он нерабочий. Что тут подправить нужно? Может поможет кто по проблеме?

 

Находим в файле search.php строку кода

$where_posts = "WHERE " . PREFIX . "_post.approve=1" . $this_date;


Меняем ее на

$where_posts = "WHERE " . PREFIX . "_post.approve=1 AND NOT category regexp "[[:<:]](1|2|3)[[:>:]]" . $this_date;


где 1,2,3 - это ID категорий, которые надо исключить

 

Для разработчиков - пункт "Исключить категорию из поиска по сайту" должен быть в настройке категории, чтобы люди не мучались. 

 

 

Изменено пользователем trianon14
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...