X
Заказать услугу

Как ограничить поиск только по заголовками записей WordPress

Плагины и Шаблоны для Wordpress
  • 2018-12-12
  • 1829 просмотр

    1 комментарий

  • Дизайн и разработка сайта

Доброго времени суток. 🙂

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

Поиск по заглавиям

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

Как и говорил, делается это с помощью фильтра. Для этого нужно в файл пользовательских функций functions.php добавить такой код:

add_filter('posts_search', 'iskat_tolko_po_zagolovkam', 500, 2);
 
function iskat_tolko_po_zagolovkam($poisk, &$wp_zapros) {
    global $wpdb;
    if (empty($poisk)) :
        return $poisk;
    endif;
    $q = $wp_zapros->query_vars;
    $n = !empty($q['exact']) ? '' : '%';
    $poisk = $poiskand = '';
    foreach ((array) $q['search_terms'] as $term) :
        $term = esc_sql(like_escape($term));
        $poisk .= "{$poiskand}($wpdb->posts.post_title LIKE '{$n}{$term}{$n}')";
        $poiskand = ' AND ';
    endforeach;
    if (!empty($poisk)) :
        $poisk = " AND ({$poisk}) ";
        if (!is_user_logged_in()) :
            $poisk .= " AND ($wpdb->posts.post_password = '') ";
        endif;
    endif;
    return $poisk;
}

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

На этом все, спасибо за внимание. 🙂

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

Оцените статью
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
Проголосовало: 6, в среднем: 5 из 5
Читайте также
Опубликован 1 комментарий

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

Чтобы оставить комментарий - заполните поля ниже. Ваш e-mail не будет опубликован. Все поля обязательны

Нажмите, чтобы добавить код в комментарий. Далее добавьте свой код внутрь тегов <code> тут код </code>
Я ознакомлен(а) с политикой конфиденциальности и даю согласие на обработку персональных данных*

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.