J'ai deux catégories que je veux exclure de mes résultats de recherche, sans succès pour l'instant.
J'ai essayé d'ajouter le code suivant, mais cela n'a pas fonctionné.
$search_query = query_posts(array('category__in' => array(-22, -21)));
Voici mon code actuel.
global $query_string;
$query_args = explode("&", $query_string);
$search_query = array();
foreach($query_args as $key => $string) {
$query_split = explode("=", $string);
$search_query[$query_split[0]] = urldecode($query_split[1]);
} // foreach
$searchq = new WP_Query($search_query);
while ($searchq->have_posts()) : $searchq->the_post();
Vous pouvez utiliser l'action pre_get_posts pour exclure des catégories de la requête de recherche.
function wcs_exclude_category_search( $query ) {
if ( is_admin() || ! $query->is_main_query() )
return;
if ( $query->is_search ) {
$query->set( 'cat', '-22, -21' );
}
}
add_action( 'pre_get_posts', 'wcs_exclude_category_search', 1 );
Vous devez coller ce code dans le fichier functions.php de votre thème.