Ibland när man söker på en WordPress-blogg får man bara ett resultat. Beroende på hur organiserad din webbplats är, bör detta vara det objekt som användaren letade efter ändå. En av våra användare frågade om det fanns ett sätt att omdirigera till inlägget om sökfrågan bara ger ett resultat. I den här artikeln kommer vi att visa dig hur du omdirigerar användare till inlägget när sökfrågan bara ger en matchning.
Allt du behöver göra är att öppna din themes functions.php-fil och klistra in följande kodavsnitt.
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 ) );
}
}
}
Nu måste du vara medveten om att vissa användare inte förväntar sig denna funktionalitet. Så det kan skrämma dem.


Casey Lessard
Fungerade för mig. Jag driver en lokal sökmotor med WordPress och har försökt hitta den här lösningen ett tag. Gör exakt som beskrivet. Tack så mycket!
Eric
Jag vill att när någon söker på en specifik fras så omdirigeras de till ett påskägg, som om någon söker specifikt på "Jag ser döda människor" så omdirigeras de till en URL jag kan definiera.
Nebulas Webbdesign
Tack för den här kodbiten, den gjorde min klient väldigt nöjd och jag trodde inte det kunde göras. Den fungerar dock inte för oss, vi använder Relevanssi-sökpluginet, borde den fungera med detta?
carlos
Vad händer om jag vill omdirigera vilken sökfråga som helst till det mest relevanta inlägget oavsett hur många inlägg sökningen returnerar? Jag skulle verkligen vilja kunna göra det.
Redaktionell personal
Ta bort if-villkoret från koden ovan, så borde det fungera.
Admin
CalebZahnd
Det här är användbart. Tack!