Comment exclure les pages des résultats de recherche ?

Dans certains cas les pages de votre site ou blog n’ont pas leur place dans les résultat de recherche. Il peut donc être nécessaire de pouvoir exclure celles-ci des résultats retournés lorsqu’un lecteur effectue une recherche sur votre blog et de n’afficher que les articles.

Comment interdire les pages dans la recherche ?

Ajoutez le code suivant à votre fichier functions.php :

// Exclure les pages des résultats de recherche
function wpln_exclure_pages_recherche( $query ) {
    if ( $query->is_search && !is_admin() ) {
        $query->set( 'post_type', 'post' );
    }
    return $query;
}
add_filter( 'pre_get_posts', 'wpln_exclure_pages_recherche' );

Si en revanche vous ne voudriez inclure que les pages et non pas les articles, alors remplacez « post » par « pages ».