Tag Archives: exclude

Heres a little WordPress snippet that allows you to exclude the current WordPress post from the WP Query – i.e. list of recent posts, more posts from the same category, etc. What the snippet does, is getting the ID of the current post and then use this post ID to exclude the current post form being included in the query.

Instructions
Add this code to your WordPress theme template files where you usually use your queries.

<?php
     $currentID = get_the_ID(); // get current post ID and convert it into a variable
     $my_query = new WP_Query(
          array('cat' => '1',
          'showposts' => '5',
          'post__not_in' => array(
               $currentID))
          );
     while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
          <h1><a href="<?php the_permalink(); ?>"><?php the_title() ?></a></h1>
          <?php the_content(); ?>
     <?php endwhile; ?>

This snippet will automatically include all public post types (that have not been excluded from searches), in your WordPress search results.

Instructions
Add this to your functions.php file

function wpsnippet_include_post_types_in_search($query) {
	if(is_search() && is_main_query()) {
		$post_types = get_post_types(array('public' => true, 'exclude_from_search' => false), 'objects');
		$searchable_types = array();
		if($post_types) {
			foreach( $post_types as $type) {
				$searchable_types[] = $type->name;
			}
		}
		$query->set('post_type', $searchable_types);
	}
	return $query;
}
add_action('pre_get_posts', 'wpsnippet_include_post_types_in_search');