Мне не нужно искать страницы на моем сайте, а хочу только искать сообщения, есть ли способ сделать это? Благодарность
Мне не нужно искать страницы на моем сайте, а хочу только искать сообщения, есть ли способ сделать это? Благодарность
Ответы:
Ниже приведено, что тип поста на странице больше не поддерживает поиск.
function remove_pages_from_search() {
global $wp_post_types;
$wp_post_types['page']->exclude_from_search = true;
}
add_action('init', 'remove_pages_from_search');
Следующее в functions.php также хорошо работает:
//Remove pages from search results
function mySearchFilter($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts','mySearchFilter');
поместите это в ваш search.php
<?php if (is_search() && ($post->post_type=='page')) continue; ?>
прямо под этим кодом -> <?php if ( have_posts() ) : while ( have_posts() ) : the_post();?>
Вы можете найти больше на здесь http://wordpress.org/support/topic/possible-search-only-posts-exclude-pages
Вот код, который проверяет, является ли поиск от администратора, а затем устанавливает тип сообщения для поиска:
if (!is_admin()) {
function wpb_search_filter($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts','wpb_search_filter');
}
от: http://www.wpbeginner.com/wp-tutorials/how-to-exclude-pages-from-wordpress-search-results/