A veces no queremos que aparezcan todas las categoría en la página de resultados de búsqueda. Por ejemplo, cuando creamos categorías específicas para la barra lateral, con noticias breves o asides, las cuales entorpecerían nuestra página de resultados. Para excluir una categoría de los resultados de búsqueda en WordPress solo necesitas hacer esto:
1. Abre el archivo functions.php de tu tema (o crea un archivo en blanco con ese nombre si el tema no lo lleva), y pega el siguiente código al final:
<?php
function SearchFilter($query) {
if ($query->is_search) {
$query->set('cat','-8,-15');
}
return $query;
}
add_filter('pre_get_posts','SearchFilter');
?>
2. Cambia 8,15 por el ID de la categoría que quieres excluir (el ID de cada categoría lo obtienes en la barra de navegación, haciendo click en la categoría, en el panel Entradas > Categorías)
¿Te ha gustado este truco? ¿quieres publicar el tuyo?
Creo que falta un – para que no muestre los resultados de esa categoría, es decir:
$query->set(‘cat’,’-8,-15′);
Tienes toda la razón, tal como estaba puesto solo mostraba esas categorías. Corregido ¡mil gracias por el aviso!