Jak ve WordPress vytvořit přesměrování na detail příspěvku, když je výsledek vyhledávání jeden článek

žena s notebookem

WordPress obsahuje zabudované vyhledávání, kde se na zadané klíčové slovo nebo frázi zobrazí relevantní příspěvky. Uživatel si pak může některý z nich vybrat a prokliknout se do jeho detailu.

Pokud je ale výsledkem vyhledávání jen jeden příspěvek, tak je celý ten proces kliknutí na náhled zbytečnou prodlevou. Mnohem lepší je rovnou poslat návštěvníka na detail příspěvku.

Udělat to lze pomocí krátkého snippetu, který se vloží do functions.php (ideálně v child šabloně).

add_action('template_redirect', 'redirect_single_post');
function redirect_single_post() {
    if (is_search()) {
        global $wp_query;
        if ($wp_query->post_count == 1 && $wp_query->max_num_pages == 1) {
            wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
            exit;
        }
    }
}
O autorovi

Tomáš Cirkl

WordPress specialista · 12 let praxe · 300+ webů ve správě

Baví mě Internet a zvláště pak redakční systém WordPress. Jsem pravidelným účastníkem a přednášejícím na WordCamp Praha a WordPress konferencích.

0 Komentářů

Odeslat Komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Pojďme se seznámit

30 minut video callu, podívám se na tvůj web a řeknu, co by se dalo zlepšit. Nic neslibuju, ale obvykle odcházíš se seznamem priorit.