Comment raccourcir la description de vos catégories
Afficher la description de ses catégories selon les pages
Dans un site wordpress, on peut facilement afficher la description d’une catégorie dans la page catégorie :
<?php echo category_description(); ?>
Ou encore, dans une page d’archives :
<?php the_archive_description( '<div class="taxonomy-description">', '</div>' ); ?>
Ou encore dans un article :
$catID = get_the_category(); echo category_description( $catID[0] );
La description pouvant être longue et impacter votre mise en page, voici une solution pour la raccourcir, sur une page de catégorie ou de sous-catégorie.
Raccourcir la description des catégories
Voici deux fonctions trouvées sur stackoverflow pour raccourcir la description des catégories, en appliquant un filtre ou une fonction directement à la fonction wordpress category_description() :
$cat_ID = 2; echo wp_trim_words( category_description( $cat_ID ), 55, '<a href="' . get_category_link( $cat_ID ) . '">' . __("Read more", "text-domain" ) . '</a>' );
ou
add_filter( 'category_description', 'cc_shorten_category_desc', 10, 2 ); function cc_shorten_category_desc( $desc, $cat_id ) { $desc = wp_trim_words( $desc, 55, '<a href="' . get_category_link( $cat_id ) . '">' . __("Lire la suite", "votre-text-domain" ) . '</a>' ); return $desc; }
Raccourcir la description des sous catégories.
Dans une page d’archive ou de catégorie, on peut créer une boucle pour afficher les sous catégories :
<?php $cat = get_query_var('cat'); $args = array( 'child_of' => $cat, 'orderby' => 'name', 'order' => 'ASC' ); $categories = get_categories($args); foreach($categories as $category) { ?>
Dans ce cas, on récupère le nom de la sous catégorie ou sa description avec :
<?php echo $category->name ;?> <?php echo $category->description ;?>
Dans un tel scénario, on peut utiliser la fonction mb_strimwidth() pour raccourcir le nombre de caractère, comme ci-dessous.
<?php echo mb_strimwidth($category->description, 0, 540, "(...)") ;?>
24/12/2018
Mis à jour le 19/12/2019
Par Copier coller | Dans wordpress