Поддержка Проблемы и решения Настройка поиска

  • Здравствуйте, хочу сделать, чтобы поиск выдавал результаты, только где было найдено полное слово.
    К примеру в поиске введен запрос «ОНО»

    а в результате посты получим везде, где сочетается набор букв «оно»

    ОНО
    Драконов

    так вот
    в результате нужно получить посты где есть слово
    ОНО
    а если таких постов нет, тогда пусть работает в стандартном режиме и выводит
    Драконов

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • rootey, приветствую. Раз, два. Может, натолкнёт на реализацию по вашей задумке.

    Спасибо за ссылки этот вариант работает, но не так как мне хотелось бы

    add_action('pre_get_posts', 'my_make_search_exact', 10);
    function my_make_search_exact($query){
    
        if(!is_admin() && $query->is_main_query() && $query->is_search) :
            $query->set('exact', true);
        endif;
    
    }

    В итоге в результатах будут отображаться только посты только с одним словом «ОНО». То есть выдаст точный запрос если он есть.

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

    rootey, вы про вторую часть своей задумки говорите:

    а если таких постов нет, тогда пусть работает в стандартном режиме и выводит
    Драконов

    верно?

    Если так, то просто допишите условие, ссылками я надеялся вас подтолкнуть к решению вопроса 🙂

    Вот что я хочу получить

    Стандартный результат поиска: ОНО

      ОНО
      Драконов
      Моно
      Оно может возродиться
      И т.д.

    А при в воде слова «ОНО» нужно получить следующий результат:

      ОНО
      Оно может возродиться
      и другие запросы, где может встречаться слово ОНО…

    А если таких постов нет, тогда пусть поиск работает в стандартном режиме и выводит:

      Драконов
      Моно

    Тоеть вариант который, который представлен выше
    будет выводить только пост с названием «ОНО» а пост «Оно может возродиться» уже не выведется. А я хочу избавиться только постов в которых нет слова «ОНО» а есть от «Драконов».

    • Ответ изменён 2 года, 12 месяцев назад пользователем rootey.
Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Настройка поиска» закрыта для новых ответов.