Как создать сайт или блог в 2020 году - бесплатное и простое руководство по созданию сайта

Как исключить определенные страницы, авторов и многое другое из поиска WordPress

Хотите исключить страницы, авторов и многое другое из поиска WordPress? По умолчанию поиск в WordPress включает все посты и страницы в результатах поиска. В этой статье мы покажем вам, как легко исключать определенные страницы, записи, авторов, категории и многое другое из результатов поиска WordPress.

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

Зачем исключать элементы из поиска WordPress?

Стандартная функция поиска WordPress отображает результаты для всех сообщений WordPress, страниц и пользовательских типов сообщений. Это приемлемо для большинства сайтов и не влияет на производительность SEO или WordPress.

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

Точно так же, если вы используете сайт членства WordPress или плагин LMS, на вашем сайте будут типы пользовательских сообщений и сообщений, которые вы можете исключить из результатов поиска.

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

С учетом сказанного давайте рассмотрим, как легко исключать элементы из поиска WordPress.

1. Исключить определенные сообщения, страницы и пользовательские типы сообщений из поиска

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

После активации отредактируйте пользовательский пост, страницу или тип поста, который вы хотите исключить из результата поиска. На экране редактирования вы увидите окно исключения из поиска.

Исключить из окна поиска

Установите флажок «Исключить из результатов поиска» и не забудьте сохранить свой пост / страницу. Этот конкретный пост / страница больше не будет отображаться в результатах поиска WordPress.

Чтобы увидеть все элементы, которые вы исключили из поиска, перейдите на Настройки »Поиск удалить стр. Здесь вы увидите список элементов, которые вы исключили из результатов поиска WordPress.

Контент, который вы исключили из поиска WordPress

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

2. Исключите конкретную категорию, тег и пользовательскую таксономию из поиска WordPress.

Этот метод требует, чтобы вы добавили код на ваш сайт WordPress. Если вы еще этого не сделали, ознакомьтесь с нашим руководством о том, как копировать и вставлять фрагменты кода в WordPress.

Сначала вам нужно найти идентификатор категории, которую вы хотите удалить.

Затем вам нужно добавить следующий код в файл functions.php вашей темы или специальный плагин сайта.

Функция Wpb_search_filter ($ query) {
if ($ query-> is_search &&! is_admin ())
$ query-> set (‘cat’, ‘-7’);
вернуть $ query;
}
add_filter (‘pre_get_posts’, ‘wpb_search_filter’);

Не забудьте заменить 7 идентификатором категории, которую вы хотите удалить.

Теперь предположим, что вы хотите исключить более одной категории. Вот как вы модифицируете код для исключения нескольких категорий.

Функция Wpb_search_filter ($ query) {
if ($ query-> is_search &&! is_admin ())
$ query-> set (‘cat’, ‘-7, -10, -21’);
вернуть $ query;
}
add_filter (‘pre_get_posts’, ‘wpb_search_filter’);

Мы просто добавляем идентификаторы категорий, которые мы хотим исключить, разделенные запятыми.

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

Если вы хотите удалить записи, заархивированные в определенном теге, используйте следующий код.

if ($ query-> is_search &&! is_admin ())
$ query-> set (‘tag’, ‘- 19’);
вернуть $ query;
}
add_filter (‘pre_get_posts’, ‘wpb_search_filter’);

Не забудьте заменить 19 на идентификатор тега, который вы хотите удалить.

Точно так же вы можете также изменить код, чтобы исключить несколько меток.

if ($ query-> is_search &&! is_admin ())
$ query-> set (‘tag’, ‘- 19, -27, -56’);
вернуть $ query;
}
add_filter (‘pre_get_posts’, ‘wpb_search_filter’);

Исключение определенных терминов в пользовательской таксономии поиска WordPress

Если вы хотите исключить термин в пользовательской таксономии из результатов поиска WordPress, вам необходимо добавить следующий код.

Функция Wpb_modify_search_query ($ query) {
global $ wp_the_query;
if ($ query === $ wp_the_query && $ query-> is_search ()) {
$ tax_query = array (
матрица (
‘таксономия’ => ‘пол’,
‘field’ => ‘slug’,
‘term’ => ‘action’,
‘operator’ => ‘NOT IN’,
)
);
$ query-> set (‘tax_query’, $ tax_query);
}
}
add_action (‘pre_get_posts’, ‘wpb_modify_search_query’);

Замените «пол» пользовательской таксономией, а «действие» – термином, который вы хотите исключить.

3. Исключить конкретного автора из поиска WordPress

Если вы хотите удалить сообщения, созданные конкретным автором, из результатов поиска WordPress, есть два способа сделать это.

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

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

Функция Wpb_search_filter ($ query) {
if ($ query-> is_search &&! is_admin ())
$ query-> set (‘author’, ‘- 24’);
вернуть $ query;
}
add_filter (‘pre_get_posts’, ‘wpb_search_filter’);

Не забудьте заменить 24 идентификатором пользователя, которого вы хотите удалить.

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

Функция Wpb_search_filter ($ query) {
if ($ query-> is_search &&! is_admin ())
$ query-> set (‘author’, ‘- 24, -12, -19’);
вернуть $ query;
}
add_filter (‘pre_get_posts’, ‘wpb_search_filter’);

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

Если вам понравилась эта статья, подпишитесь на наш канал YouTube, чтобы посмотреть обучающие видеоролики WordPress. Вы также можете найти нас на Twitter и Facebook,

Table of Contents