Как отключить поиск на сайте WordPress?

👍 Научим создавать сайты на WordPress бесплатно за 19 уроков. Подробнее →

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

Как отключить поиск?

Рассмотрим два способа, способных решить эту задачу.

Способ 1. Плагин Disable Search

Плагин Disable Search не нуждается в какой-либо настройке со стороны пользователя. Его достаточно установить и активировать, после чего он удалит форму поиска из темы и отключит виджет поиска. Если пользователь попытается ввести URL-адрес поискового запроса, плагин вернет страницу ошибки 404. Следует отметить, что плагин не влияет каким-либо образом на функциональность поиска внутри области администрирования WordPress. Вы по-прежнему можете выполнять поиск внутри админ-панели WordPress.

Как отключить поиск на сайте WordPress?

Способ 2. Ручное отключение поиска

Ручной способ отключения поискового механизма на сайте предполагает редактирование файла functions.php Вашей активной темы на WordPress-сайте.

Если Вы не знаете, как редактировать functions.php, то в этом случае Вам поможет плагин ProFunctions.

Итак, для решения задачи в самый конец functions.php необходимо добавить следующий код:

function wpschool_filter_query( $query, $error = true ) {
    if ( is_search() ) {
        $query->is_search = false;
        $query->query_vars[s] = false;
        $query->query[s] = false;
        if ( $error == true )
        $query->is_404 = true;
    }
}
add_action( 'parse_query', 'wpschool_filter_query' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );

function wpschool_remove_search_widget() {
    unregister_widget('WP_Widget_Search');
}
add_action( 'widgets_init', 'wpschool_remove_search_widget' );

Этот способ аналогичен предыдущему. Он также отключает виджет Поиск и перенаправляет все прямые или косвенные поисковые запросы на страницу 404.

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

Создай свой первый сайт на WordPress
Если Вам понравилась статья — поделитесь с друзьями
Михаил Петров
Привет! Меня зовут Михаил Петров. Я копирайтер и занимаюсь этим с 2013 года. Скрупулезность и ответственность - моя фишка! Не могу делать как попало и добиваюсь, чтоб заказчик сказал минимум “неплохо”. За все время своей работы пришлось написать и отредактировать немало разной “текстовухи”, включая SEO-тексты, отзывы и прочую чушь. На сегодняшний день специализируюсь на написании информационных статей и руководств технического направления. Вижу смысл и светлое будущее в текстах для людей, а не для машин.
Обсуждение: 1
  1. Николай

    create_function — Создаёт анонимную (лямбда) функцию
    Эта функция объявлена УСТАРЕВШЕЙ, начиная с PHP 7.2.0 и ее использование крайне не рекомендовано.
    Если вы используете PHP 5.3.0 и новее, то используйте анонимные функции.
    (С) https://www.php.net/manual/ru/function.create-function.php

Задать вопрос