О web-разработке
и даже немного больше...

Исключение страниц из результатов поиска WordPress

Если вам приходилось работать с WordPress, то вы наверняка уже имеете представление что такое записи и страницы. Отличие этих терминов более отчетливо ясно для тех, у кого был уже опыт работы с этой системой.

По умолчанию встроенный механизм поиска Wordress выдает все записи и страницы, что в некоторых отдельных случаях может быть не очень желательным для владельцев сайта. К примеру, это могут быть какие-либо специфичные страницы, которые вы не хотите афишировать в результатах поиска на вашем сайте. Разумеется, это может понадобиться не всегда, а только в отдельных случаях, и по этой причине данный пример нужно использовать по ситуации.

Теперь давайте рассмотрим такую задачу, нам требуется исключить все страницы из поиска на сайте, и оставить только выдачу записей. Делается это довольно просто, и вам не придется вкладывать больших усилий в реализацию этой фичи. Как и в большинстве случаев «допиливания» WordPress нам потребуется внести немного кода в файл function.php вашей темы. Под темой в wordpress принято подразумевать файлы вашего шаблона, таким образом, файл function.php должен находиться по такому пути:
\wp-content\themes\имя-темы\functions.php

Открываем этот файл, либо создаем его (если его нет), и вписываем туда этот код:

function wph_exclude_pages($query) {
    if ($query->is_search) {
        $query->set('post_type', 'post');
    }
    return $query;
}
add_filter('pre_get_posts','wph_exclude_pages');

Сохраняем файл, после чего стоит проверить работоспособность данного кода. Для начала скопируйте заголовок какой-либо страницы, затем проверьте наличие его в поиске на сайте. Если в результатах поиска нет этой страницы, то всё прошло успешно, в ином случае стоит смотреть, где вы допустили ошибку. Чтобы вы понимали, при использовании данного снипета кода в результатах поиска будут отображаться только записи, а страницы будут исключены.

Опубликован: 25.02.2018 г.

См. также:

Убираем URL из формы комментариев WordPress
Работа с базой данных в WordPress
SQL-запросы для смены домена в WordPress
Мультиязычность с помощью плагина Polylang
Как создать свои шорткоды в WordPress
Как добавить виджет на сайт WordPress?
Добавление записей в WordPress средствами PHP
Как отключить архивы по авторам в WP?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта