Seiten oder Artikel aus der WordPress-Suche entfernen
Seiten können in WordPress aus der internen Website-Suche ausgeschlossen werden, indem die IDs der nicht erwünschten Seiten über eine Funktion aus dem »Search-Query« entfernt werden.
Die Standard-Suche von WordPress durchsucht alle öffentlichen Inhalte der Website, und listet die Ergebnisse mit Hilfe der search.php
auf. Fast jedes Webdesign-Projekt verfügt jedoch über Seiten die nicht in den Suchergebnissen auftauchen sollen. Das sind u.a. »Danke«-Seiten für ein Kontaktformular, Bestätigungsseiten für Newsletter-Anmeldungen, Unterseiten von Checkout-Prozessen usw. Mit folgendem Snippet könnt ihr ganz gezielt Inhalte aus der Suche ausschließen.
Inhalte aus der WordPress-Suche löschen
Fügt folgendes Snippet in die functions.php
des Themes ein. Über die IDs innerhalb des Arrays, könnt ihr statische Seiten oder Artikel entfernen.
/* exclude specific pages from search */
function kb_exclude_from_search($query) {
if ($query->is_search) {
$query->set('post__not_in', array(1,2,3,4)); // IDs anpassen!
}
return $query;
}
add_filter('pre_get_posts','kb_exclude_from_search');
So findet ihr die ID eines Beitrags heraus
Um herauszufinden welche ID ein Beitrag besitzt, geht ihr am einfachsten so vor: Wechselt in das Dashboard von WordPress und öffnet dort die Liste der entsprechenden Artikel oder Seiten. Wenn ihr den Cursor nun über den Titel des Inhalts bewegt, wird in der Statusleiste die ID angezeigt.
[…] Die Standard-Suche von WordPress durchsucht alle öffentlichen Inhalte der Website, und listet die Ergebnisse mit Hilfe der search.php auf. Fast jedes Webdesign-Projekt verfügt jedoch über Seiten die nicht in den Suchergebnissen auftauchen sollen. […]
[…] Seiten oder Artikel aus der WordPress-Suche entfernen […]
Cooler Weg das per Hand über die functions.php herauszunehmen.
Ich nutze für etwas mehr Komfort das Plugin „Simply Exclude“