Cacher une catégorie de la page d’accueil et du flux RSS WordPress

2 avril 2015 | Dans Tutoriels WordPress | Par
Cacher une catégorie de la page d’accueil et du flux RSS

Il arrive parfois de vouloir cacher une catégorie pour plusieurs raisons. J’ai personnellement eu ce besoin sur TuniBox, le flux principal est un blog généraliste, et je ne voulais pas y propulser les articles techniques de la catégorie WordPress, de même pour le flux RSS sur lequel des abonnés reçoivent les nouveaux articles. Ces derniers ne se sont pas inscrits pour recevoir des tutos WordPress!

Le code

La première chose à faire est d’identifier l’ID de la catégorie en question. Une méthode très simple consiste à utiliser l’URL de cette catégorie dans l’administration. Cliquez sur la catégorie concernée dans Articles > Catégories et identifiez tag_ID=xxx, c’est l’ID. Dans notre exemple, il s’agit de la catégorie 711.

ID de la catégorie

Nous utiliserons l’action pre_get_posts. Ajoutez le code suivant en éditant le fichier functions.php ou en créant un plugin de personnalisation :

[php]
function hide_category($query) {
if ($query->is_home() && $query->is_main_query()) {
$query->set(‘cat’, ‘-711’);
}
}
add_action(‘pre_get_posts’, ‘hide_category’);
[/php]

Nous pouvons ajouter la condition $query->is_feed pour cacher la catégorie du flux RSS. Nous pouvons aussi spécifier plusieurs catégories en les séparant par virgule, le code final est le suivant :

[php]
function hide_category($query) {
if (($query->is_home() && $query->is_main_query()) || $query->is_feed) {
$query->set(‘cat’, ‘-711,-712’);
}
}
add_action(‘pre_get_posts’, ‘hide_category’);
[/php]

Les catégories 711 et 712 ne s’afficheront plus dans le flux RSS et dans la loop principale du site !

TuniBox sur facebook

Un Commentaire à “Cacher une catégorie de la page d’accueil et du flux RSS WordPress”

  1. Bonjour Hichem,

    Comme je n’en ai pas encore eu le besoin jusqu’ici, je ne m’étais jamais posé la question de comment faire pour exclure une catégorie du flux RSS et de la page de blog, mais je garde votre tuto de côté, car il pourrait bien me servir à l’avenir 😉
    Merci bien pour votre partage de connaissance.

    Cordialement,

    Bruno

Laisser un Commentaire