WordPress Suche – Post Type ausschließen

Post Type Wordpress Suche ausschließen
Inhaltsverzeichnis

Wenn ihr die Standardsuche von WordPress verwendet, durchsucht diese alle verwendeten “Post Types” die Ihr auf der Seite verwendet.

Bei den meisten bedeutet dies dass die Beiträge, also der Blogbereich durchsucht wird – genau hier macht die Suche in der Regel ja auch Sinn.

Sobald ihr einen neuen Post Type verwendet wird dieser nun aber auch durchsucht. Hier kommt es aber recht häufig vor dass dies gar nicht gewollt ist.

Um das mal kurz an einem Beispiel zu erklären.

Ihr betreibt einen News/Blogbereich auf der Seite. Nun legt ihr einen neuen Custom Post Type an um z.B. ein separates Glossar oder Lexikon anzuzeigen. Das kann ja Sinn machen um einfach etwas Trennung und Ordnung in diese beiden Bereiche zu bringen. Wird nun die Suchfunktion von WordPress im News/Blog Bereich verwendet werden hier auch die Ergebnisse aus dem Lexikon angezeigt.

Ich persönlich würde sagen “muss nicht sein”.

Spezielle Post Types in der Suche deaktivieren

Um einen speziellen Post Type von der Suche auszuschließen fügt folgenden Code in eure functions.php.

Dabei müsst ihr in Zeile 3 eure Post Types entsprechend angeben. In meinem Beispiel habe ich jetzt einmal “lexikon” & “firmenverzeichnis” gewählt.

Nicht vergessen! Child Theme verwenden!

function shapeSpace_filter_search($query) {
	if (!$query->is_admin && $query->is_search) {
		$query->set('post_type', array('post', 'lexikon', 'firmenverzeichnis'));
	}
	return $query;
}
add_filter('pre_get_posts', 'shapeSpace_filter_search');

WooCommerce Produkte von von der Suche ausschließen

Selbstverständlich können wir mit unserem kleinen Snippet auch WooCommerce Produkte bei der Standard WordPress Suche ausschließen. Default lautet hier der Post Type “products”. Am Ende sieht der Code also wie folgt aus:

function shapeSpace_filter_search($query) {
     if (!$query->is_admin && $query->is_search) {
         $query->set('post_type', array('post', 'products'));
     }
     return $query;
 }
 add_filter('pre_get_posts', 'shapeSpace_filter_search');

Das war es schon. Für die Suche gibt es eine ganze Menge Plugins. Möchte man wirklich nur etwas ausblenden sollte man aber getrost auf ein zusätzliches Plugin verzichten da diese in der Regel wieder noch einige Funktionen mehr mit an Bord haben.

Christian Pust
WordPress & Onlinemarketing Experte mit über 15 Jahren Erfahrung. Entwickler & CEO von Trackboxx – der Google Analytics Alternative.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Das könnte dich auch interessieren

Du benötigst Unterstützung bei deinem WordPress Projekt?

Dein Ansprechpartner
Christian