Manchmal erhalten Sie bei der Suche in einem WordPress-Blog nur ein Ergebnis. Je nachdem, wie gut Ihre Website organisiert ist, sollte dies der Artikel sein, nach dem der Benutzer gesucht hat. Einer unserer Benutzer fragte, ob es eine Möglichkeit gäbe, zum Beitrag weiterzuleiten, wenn die Suchanfrage nur ein Ergebnis liefert. In diesem Artikel zeigen wir Ihnen, wie Sie Benutzer zu dem Beitrag weiterleiten, wenn die Suchanfrage nur eine Übereinstimmung ergibt.
Alles, was Sie tun müssen, ist die Datei functions.php Ihres Themes zu öffnen und den folgenden Snippet einzufügen.
add_action('template_redirect', 'one_match_redirect');
function one_match_redirect() {
if (is_search()) {
global $wp_query;
if ($wp_query->post_count == 1) {
wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
}
}
}
Nun müssen Sie sich bewusst sein, dass einige Benutzer diese Funktionalität nicht erwarten. Es könnte sie also erschrecken.
Casey Lessard
Hat bei mir funktioniert. Ich betreibe eine lokale Suchmaschine mit WordPress und habe schon seit einiger Zeit nach dieser Lösung gesucht. Funktioniert genau wie beschrieben. Vielen Dank!
Eric
Ich möchte, dass bei der Suche nach einer bestimmten Phrase zu einem Easter Egg weitergeleitet wird, z. B. wenn jemand speziell nach „Ich sehe tote Menschen“ sucht, wird er zu einer von mir definierten URL weitergeleitet.
Nebulas Website Design
Danke für diesen Code, er hat meinen Kunden sehr glücklich gemacht und ich dachte nicht, dass das möglich wäre. Er funktioniert jedoch nicht bei uns. Wir verwenden das Relevanssi-Suchplugin, sollte es damit funktionieren?
carlos
Was ist, wenn ich jede Suchanfrage zum relevantesten Beitrag weiterleiten möchte, unabhängig von der Anzahl der zurückgegebenen Beiträge? Das würde ich wirklich gerne können.
Redaktion
Entfernen Sie die if-Bedingung aus dem obigen Code, und es sollte funktionieren.
Admin
CalebZahnd
Das ist praktisch. Danke!