Поиск только по записям WordPress
Достаточно часто сайты на движке WordPress используют не только как блоги, но и для самых разных целей и задач. Тем не менее часты ситуации, когда блоги на таких сайтах все же присутствуют наравне с огромным количество других страниц.
По-умолчанию поиск в WordPress реализован таким образом, что ищет информацию и в записях и в страницах. Что бывает не всегда необходимо. Поэтому существует возможность ограничить зону поиска. Сегодня мы разберем, как можно сделать, чтобы поиск осуществлялся только по записям. Другими словами решим проблему: как исключить страницы из поиска WordPress. Давайте сделаем это.
Все, что нам потребуется - это открыть файл functions.php нашей темы и вставить туда следующий код:
function searchOnlyPosts($query) { if ($query->is_search) { $query->set('post_type', 'post'); } return $query; } add_filter('pre_get_posts','searchOnlyPosts');
Не забывайте, что код нужно вставлять до закрывающего тега ?>. Вот и все. Теперь мы можем сделать поиск только по блогу, ведь результаты поиска со страниц больше выдаваться не будут.