Découper un corps de texte

Portrait de titouille

Pour les besoins de ce site, j'avais rapidement mis en place une méthode de découpage de string pour n'afficher qu'une partie du corps du texte d'un article dans les affichages listes.

Mais là où ça devient vite complexe, c'est à partir du moment ou on utilise du code html dans le contenu, ce qui est le cas avec drupal lorsqu'on active le module de retour à la ligne automatique et les balises html.

Après quelques recherches, je suis tombé sur ce billet sur le site slashorg. On peut y trouver une fonction php qui permet de faire une découpe propre et ajouter les balises manquantes en fin de texte découpé.

La méthode fonctionne même avec les balises qui doivent se fermer dans la balise ouvrante tel que [img src="" /]

Pour les utilisateurs de drupal, j'ai CCK activé pour les contenus de chaque section (contenus différenciés), et j'utilise contemplate pour la mise en forme. J'ai donc rajouté la méthode du billet cité plus haut dans la page "template.php" du thème que j'utilise, ainsi elle est accessible via le code inclus dans le template "Teaser", template utilisé pour l'affichage en mode liste.

Je le trouve vraiment très pratique. Il découpe au milieu des scripts, des liens, et le résultat reste nickel à l'affichage, les fermetures de balises sont respectées. ça peut servir Wink





Erotisme ?

"j'avais rapidement mis en place une méthode de découpage de string pour n'afficher qu'une partie du corps..."

Quel sens de la formule ce Titouille Laughing out loud

N'est-ce pas

Portrait de titouille

Je ne l'avais pas vu de cette manière, mais c'est vrai que sous cet angle, c'est explicite Laughing out loud