Главная
Wordpress
Как ограничить поиск только по заголовками записей WordPress
  • 27 Апр 2015г
  • 720
  • 0
  • Рубрика: Wordpress

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

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

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

Сегодня будет маленький урок, о том как ограничить поиск на своем блоге 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
(5 голосов, в среднем: 5 из 5)

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

Заполните поля ниже. Ваш e-mail не будет опубликован. Обязательные поля помечены *

Уважаемые пользователи! При добавлении комментариев на сайт Вам следует соблюдать правила указанные под формой отправки комментариев.

Соблюдайте добавления комментариев

Это не спам *

Нажмите, чтобы добавить код в комментарий