Si vous avez choisi d’afficher les catégories dans les permaliens WordPress de vos articles (paramétre à régler dans Réglage > Permalien de l’administration WordPress, voir plus bas), les catégories parentes apparaitront aussi dans les URLs de vos articles, ce qui peut vous donner des URLs à rallonge.

Comme : http://exemple.com/categoriemere/categoriefille/categoriepetitefill/mon-article

Pour supprimer la hierarchie de catégorie dans l’url, vous pouvez rajouter le code suivant dans le fonctions.php de votre thème enfant ou dans un plugin dedié :

add_filter( 'post_link', 'forfoot_remove_parent_cats_from_link', 10, 3 );
 function forfoot_remove_parent_cats_from_link( $permalink, $post, $leavename )
 {
     $cats = get_the_category( $post->ID );
     if ( $cats ) {
         // On s'assure que l'on utilise la même catégorie que le générateur WP de permalien 
         usort( $cats, '_usort_terms_by_ID' ); // order by ID
         $category = $cats[0]->slug;
         if ( $parent = $cats[0]->parent ) {
             // S'il existe des parents, on les supprime dans le permalien 
             $parentcats = get_category_parents( $parent, false, '/', true );
             $permalink = str_replace( $parentcats, '', $permalink );
         }
     }
     return $permalink;
 }

Ajouter la catégorie dans l’URL de l’article WordPress via les réglages de permaliens :

0 réponses

Laisser un commentaire

Participez-vous à la discussion?
N'hésitez pas à contribuer!

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.