Cas d'école simple pour les utilisateurs d'ACF. On cherche à afficher un champs texte tout en limitant le nombre de mots ou de caractères à l'affichage.
Limiter l'affichage en nombre de mots
Basiquement, WordPress permet d'afficher le contenu résumé de l'éditeur grâce à la fonction the_excerpt()
Dans notre situation, il s'agit d'un champs personnalisé ACF, qui nécessite une autre méthode. Et la solution réside dans l'utilisation de la fonction wp_trim_words().
Grâce à elle, on peut définir 3 arguments :
- Le champs à récupérer
- Le nombre de mots à afficher
- Le caractère placé à la fin
Dans l'exemple ci-dessous, le champs à récupérer a pour slug "description_custom", on choisit d'afficher 25 mots et de terminer par "...".
<?php
$ma_description_limitee = wp_trim_words(get_field('description_custom'), $num_words = 25, $more = '...');
?>
<p><?php echo $ma_description_limitee; ?></p>
N.B : pour avoir ce même résultat avec la fonction the_excerpt() on utilise : <?php echo wp_trim_words(get_the_excerpt(), 25); ?>
Limiter l'affichage en nombre de caractères
Il est aussi possible de limiter l'affichage d'un champs texte ACF selon un nombre de caractères choisis.
Dans l'exemple ci-dessous le champs à récupérer a pour slug "description_custom", on choisit d'afficher 200 caractères et de terminer par "...".
<?php
$ma_description_limitee = get_field('description_custom');
?>
<p><?php echo substr($ma_description_limitee, 0, 200); ?>...</p>
Laisser un commentaire