WordPress search only works with posts, not pages
24,628
Solution 1
Lack of page search and search results ranked by post date instead of relevance is a typical WP problem. Try http://wordpress.org/extend/plugins/relevanssi/
Solution 2
Add this code to your functions.php file.
function wpshock_search_filter( $query ) {
if ( $query->is_search ) {
$query->set( 'post_type', array('post','page') );
}
return $query;
}
add_filter('pre_get_posts','wpshock_search_filter');
http://wpth.net/limit-wordpress-search-results-to-specific-post-types
Comments
-
Ryan about 4 years
I'm working on my own custom WordPress theme, using a blank, default template to start. I haven't edited the search.php file.
Many of my WordPress posts are Pages. Unfortunately, the site search only retrieves posts, not pages.
Any idea how to get the theme to search both posts and pages?
Here is the majority of search.php:
<?php if (have_posts()) : ?> <h3>Search Results</h3> <?php include (TEMPLATEPATH . '/inc/nav.php' ); ?> <?php while (have_posts()) : the_post(); ?> <div <?php post_class() ?> id="post-<?php the_ID(); ?>"> <h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4> <?php include (TEMPLATEPATH . '/inc/meta.php' ); ?> <div class="entry"> <?php the_excerpt(); ?> </div> </div> <?php endwhile; ?> <?php include (TEMPLATEPATH . '/inc/nav.php' ); ?> <?php else : ?> <h3>No posts found.</h3> <?php endif; ?>
-
rhand over 7 yearsPage cannot be reached.
-
Khom Nazid about 5 yearsThat wasn't the question. It's not about relevance, it's about pages missing entirely.
-
Alejo_Blue about 4 yearswhy is this answer marked as correct? where are the "administrators" to check this. They only work when i spelled my sentences incorrectly malnacidos
-
Thomas Bennett about 3 yearsI don't think this answer should not be downvoted. It's not the correct answer as accepted, but the writer pointing out that the default WordPress search function sucks is fair.