Title: Search Exclude
Last modified: September 29, 2017

---

# Search Exclude

 *  Resolved [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/)
 * Plugin does not seems compatible with:
    [https://nl.wordpress.org/plugins/search-exclude/](https://nl.wordpress.org/plugins/search-exclude/)
 * It seems to be returning everything I checked to not be found.
    Can this be added?
 * The page I need help with: _[[log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fwordpress.org%2Fsupport%2Ftopic%2Fsearch-exclude%2F%3Foutput_format%3Dmd&locale=en_US)
   to see the link]_

Viewing 12 replies - 1 through 12 (of 12 total)

 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/#post-9542457)
 * Seems you can add this to your query:
    ‘post__not_in’ => get_option( ‘sep_exclude’,
   array() )
 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/#post-9542741)
 * I added something to class-ysm-search
 * replaced in function search_posts
 * `return $posts`
 * replaced by
 *     ```
       		$posts = $wpdb->get_results($query, OBJECT_K);
   
       		if ( class_exists( 'SearchExclude' ) ) {
       			$search_exclude = get_option('sep_exclude', array());
       			foreach ($posts as $post) {
       				if(!in_array($post->ID,$search_exclude)){
       					$filtered_posts[] = $post;
       				}
       			}
       			return $filtered_posts;
       		} else {
       			return $posts;
       		}
       ```
   
 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/#post-9542797)
 * Added plugin GROUPS support:
 *     ```
       		if ( class_exists( 'SearchExclude' ) ) {
       			$search_exclude = get_option('sep_exclude', array());
       			foreach ($posts as $post) {
   
       				if( class_exists( 'Groups_Cache')){
       					$product         = new WC_Product( $post );
       					$visible_product = $product->is_visible();
       				} else {
       					$visible_product = true;
       				}
   
       				if(!in_array($post->ID,$search_exclude) && $visible_product){
       					$filtered_posts[] = $post;
       				}
       			}
       			return $filtered_posts;
       		} else {
       			return $posts;
       		}
       ```
   
    -  This reply was modified 8 years, 7 months ago by [darkallman](https://wordpress.org/support/users/darkallman/).
 *  Plugin Author [YummyWP](https://wordpress.org/support/users/yummy-wp/)
 * (@yummy-wp)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/#post-9551513)
 * Hi!
 * Thanks for your time! I think it could be a nice feature for my plugin.
    I’ll
   add it to my todo list.
 * Stanislav
    -  This reply was modified 8 years, 7 months ago by [YummyWP](https://wordpress.org/support/users/yummy-wp/).
 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/#post-9551596)
 * There is a small mistake in the code above….
    Use this:
 *     ```
       		$posts = $wpdb->get_results($query, OBJECT_K);
   
       		if ( class_exists( 'SearchExclude' ) ) {
       			$search_exclude = get_option('sep_exclude', array());
       			foreach ($posts as $post) {
       				$visible_product = true;
       				if( class_exists( 'Groups_Cache') && has_term('product', 'taxonomy', $post)){
       					$product         = new WC_Product( $post );
       					$visible_product = $product->is_visible();
       				} else {
       					$visible_product = true;
       				}
   
       				if(!in_array($post->ID,$search_exclude) && $visible_product){
       					$filtered_posts[] = $post;
       				}
       			}
       			return $filtered_posts;
       		} else {
       			return $posts;
       		}
       ```
   
 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/#post-9556694)
 * Above code is still not ok… still investigating a way to hide them from the search….
    -  This reply was modified 8 years, 7 months ago by [darkallman](https://wordpress.org/support/users/darkallman/).
 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 7 months ago](https://wordpress.org/support/topic/search-exclude/#post-9557847)
 * Final version:
 *     ```
       		if(class_exists( 'Groups_Cache')){
       			foreach ($posts as $post) {
       				if( has_term('product', 'taxonomy', $post) ) {
   
       					$product         = new WC_Product( $post );
       					$visible 		 = intval($product->is_visible());
   
       					if($visible){
       						$visible = intval(Groups_Post_Access::user_can_read_post($post->ID));
       					}
   
       					if($visible){
       						$filtered_posts[] = $post;
       					}
   
       				} else {
       					$filtered_posts[] = $post;
       				}
   
       			}
       			return $filtered_posts;
       		}
       		return $posts;
       ```
   
 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 2 months ago](https://wordpress.org/support/topic/search-exclude/#post-10027724)
 * Any news on implementing this?
 *  Plugin Author [YummyWP](https://wordpress.org/support/users/yummy-wp/)
 * (@yummy-wp)
 * [8 years, 2 months ago](https://wordpress.org/support/topic/search-exclude/#post-10031759)
 * Hi,
    I’ll add this feature in next release (20th March).
 * Regards
    Stan
 *  Plugin Author [YummyWP](https://wordpress.org/support/users/yummy-wp/)
 * (@yummy-wp)
 * [8 years, 1 month ago](https://wordpress.org/support/topic/search-exclude/#post-10102836)
 * Hi,
 * added Search Exclude compatibility in the latest release.
 * Unfortunately I don’t know what is ‘Groups_Cache’ class and why it needed, but
   you can add that code using a filter:
 *     ```
       add_filter( 'smart_search_query_results', 'groups_cache_posts_filter' );
       function groups_cache_posts_filter( $posts ) {
           if(class_exists( 'Groups_Cache')){
       	foreach ($posts as $post) {
       		if( has_term('product', 'taxonomy', $post) ) {
       			$product = new WC_Product( $post );
       			$visible = intval($product->is_visible());
   
       			if($visible){
       				$visible = intval(Groups_Post_Access::user_can_read_post($post->ID));
       			}
   
       			if($visible){
       				$filtered_posts[] = $post;
       			}
   
       		} else {
       			$filtered_posts[] = $post;
       		}
   
       	}
       			return $filtered_posts;
           }
       }
       ```
   
 *  Thread Starter [darkallman](https://wordpress.org/support/users/darkallman/)
 * (@darkallman)
 * [8 years, 1 month ago](https://wordpress.org/support/topic/search-exclude/#post-10102918)
 * This is a class from the GROUPS plugin.
    I have products that are only visible
   to users that are member of a group. These products must only be found if the
   user is a member. [https://nl.wordpress.org/plugins/groups/](https://nl.wordpress.org/plugins/groups/)
 *  Plugin Author [YummyWP](https://wordpress.org/support/users/yummy-wp/)
 * (@yummy-wp)
 * [8 years, 1 month ago](https://wordpress.org/support/topic/search-exclude/#post-10107971)
 * Got it.
    So please use the above code if needed.

Viewing 12 replies - 1 through 12 (of 12 total)

The topic ‘Search Exclude’ is closed to new replies.

 * ![](https://ps.w.org/smart-woocommerce-search/assets/icon-256x256.png?rev=3041417)
 * [Sokol: Smart WooCommerce Search](https://wordpress.org/plugins/smart-woocommerce-search/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/smart-woocommerce-search/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/smart-woocommerce-search/)
 * [Active Topics](https://wordpress.org/support/plugin/smart-woocommerce-search/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/smart-woocommerce-search/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/smart-woocommerce-search/reviews/)

## Tags

 * [exclude](https://wordpress.org/support/topic-tag/exclude/)

 * 12 replies
 * 2 participants
 * Last reply from: [YummyWP](https://wordpress.org/support/users/yummy-wp/)
 * Last activity: [8 years, 1 month ago](https://wordpress.org/support/topic/search-exclude/#post-10107971)
 * Status: resolved