Limiter la longueur de The Content dans WordPress sans plugin

Publié le 11 décembre 2013 par Amerigeau @arnaudmerigeau
11 décembre 2013

Ce matin, je vous propose une astuce WordPress très simple à mettre en place et efficace ou comment limiter la longueur de the_content(); dans WordPress sans plugin.

Allons droit au but si vous le voulez bien : on a donc des boucles de posts dans WordPress et pour x raison, vous avez besoin de gérer la longueur de vos résumés affichés dans la boucle.

Il y a 2 intérêts à fonctionner ainsi :

  • aucun plugin n’est utilisé, on ne surcharge par WordPress avec une fonctionnalité lourde
  • l’utilisateur final qui va utiliser le site ne sera pas obligé de rédiger un résumé qu’on aurait pu utiliser avec the_excerpt();

Dans la pratique, ouvrez le fichier functions.php de votre thème actif et à la fin du fichier, insérer :

// LIMITER LA LONGUEUR DE THE_CONTENT DANS WORDPRESS
add_filter("the_content", "break_text");
function break_text($text){
$length = 500;
if(strlen($text)<$length+10) return $text;//don't cut if too short

$break_pos = strpos($text, ' ', $length);//find next space after desired length
$visible = substr($text, 0, $break_pos);
return balanceTags($visible) . " […]";
}

La variable $length vous permet de gérer la longueur de vos “résumés” tandis que return balanceTags($visible) . ” […]“; vous permet de gérer le suffixe après le texte, dans le cas présent [...]. Il est aussi possible d’intégrer cette fonction directement dans le template de page pour cibler l’action de cette astuce.

Il ne vous reste plus qu’à ajouter la fonction The Content de WordPress dans le template de page et lire d’autres bonnes astuces WordPress

Tags: