Comment supprimer des pages de la recherche?

11

Je n'ai pas besoin de rechercher des pages sur mon site et je ne souhaite que rechercher des articles. Y a-t-il un moyen de le faire? Merci

    
posée 16.12.2010 - 02:01

4 réponses

23

Le texte ci-dessous devrait rendre le type de publication de page impossible à rechercher.

function remove_pages_from_search() {
    global $wp_post_types;
    $wp_post_types['page']->exclude_from_search = true;
}
add_action('init', 'remove_pages_from_search');
    
réponse donnée prettyboymp 16.12.2010 - 03:23
13

Ce qui suit dans functions.php fonctionne également bien:

//Remove pages from search results
function mySearchFilter($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts','mySearchFilter');
    
réponse donnée Arnold 16.12.2010 - 06:18
0

mettez ceci dans votre search.php

<?php if (is_search() && ($post->post_type=='page')) continue; ?>

juste en dessous de ce code - > <?php if ( have_posts() ) : while ( have_posts() ) : the_post();?>

vous en saurez plus ici enlace

    
réponse donnée andrewk 16.12.2010 - 03:00
0

Voici un code qui vérifie si la recherche est effectuée par l'administrateur, puis définit le type de publication à rechercher:

if (!is_admin()) {
function wpb_search_filter($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts','wpb_search_filter');
}

de: enlace

    
réponse donnée HcRock 29.11.2017 - 17:31

Lire d'autres questions sur les étiquettes