NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.

Exclure une catégorie des archives
Intermédiaire

---- Cet article a été modifié : 12 juin 2021

Exclure une catégorie des archives :

Dans l’exemple de ce tutoriel, nous avions créé des catégories de nos articles. Une s’appelait Blogue que nous avons voulu ajouter dans un menu WordPress et l’exclure des résultats de tous les articles dans la page d’accueil et dans les archives WordPress.

Comment trouver l’ID de ma catégorie ?
Allez dans l’onglet catégorie de mes articles puis ensuite sélectionnez la catégorie visée, puis dans la barre d’adresse l’ID apparaît comme dans l’image ci-dessous.

Exclure une catégorie des archives / Front Page WordPress

Voici donc la fonction que nous avons effectuée par un filtre pre_get_posts.
l’ID 31 est donc l’identifiant de ma catégorie et la condition est si on est dans l’accueil et les archives alors n’affiche pas la catégorie 31. Par contre la condition permet d’afficher les articles de la catégorie dans la catégorie, du mot clé, et de l’admin.

add_action('pre_get_posts', 'remove_themespress_post_categories' );
function remove_themespress_post_categories( $wp_query ) {
  // 31 = ID de ma catégorie
  $remove_cat = '-31';
  // supprimer des archives feeds, search, and home page, mais pas admin ou category
  if( (is_home() || ( is_archive() && !is_category() && !is_tag() )) && !is_admin()) {
    set_query_var('cat', $remove_cat);
  }
}

Nous aurions aussi très bien effectué cette exclusion dans un Query Post s’il y a. Des exemples aussi de Query Posts.

Leave a Reply

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>