Changeset 17487 in spip-zone


Ignore:
Timestamp:
Dec 16, 2007, 10:20:19 PM (13 years ago)
Author:
bmarne@…
Message:
  • Une CSS pour les intertitres de la partie privée (pas trop top...)
  • De nouvelles fonctions pour les modèles
  • un modèle pour avoir un extrait du texte d'un article <extraitXXX|debut=YY|taille=ZZ> XXX est le n° de l'article, debut et taille sont optionnels (valeurs par défaut 0 et 20), il désigent pour taille, le nombre de mots à afficher, pour début à partir de quel mot commencer
  • un modèle proche du précédent sauf qu'il faut cela dans une partie du texte délimitée par des intertitres: <extraitXXX|partie|partie=x.y.z|debut=YY|taille=ZZZ>. C'est comme le précédent. partie désigne l'ancre de l'intertitre.

Les extraits sont entre <quote></quote>

Tout ça est encore un peu brut de décofrage... à peaufiner un jour si j'ai le temps...

Location:
_plugins_/_dev_/intertitres_hierarchises_et_table_matieres
Files:
3 added
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_dev_/intertitres_hierarchises_et_table_matieres/intertitres_tdm_fonctions.php

    r17451 r17487  
    6161 return $sortie;
    6262}
     63function extrait_un_titre ($texte,$ancre) {
     64 preg_match ("/<h(\d) class=\"spip\"><a name='$ancre'><\/a>(.*?)<\/h\\1>/",$texte,$matches);
     65 $titre = textebrut($matches[2]);
     66 return $titre;
     67}
     68function extrait_de_texte ($texte,$debut=0,$taille=20) {
     69 $mots = explode (" ",textebrut($texte));
     70 $extrait = implode (" ",
     71                array_slice($mots,$debut,$taille)
     72                );
     73return $extrait;
     74}
     75function extrait_partie ($texte,$ancre,$debut=0,$taille) {
     76 preg_match ("/<h(\d) class=\"spip\"><a name='$ancre'><\/a>.*?<\/h\\1>(.*?)<h\\1 class=\"spip\">/s",$texte,$matches);
     77 $partie = $matches[2];
     78 if (!$taille) $taille = str_word_count($partie);
     79 $extrait = extrait_de_texte ($partie,$debut,$taille);
     80 return $extrait;
     81}
    6382
    6483function table_des_matieres ($texte,$tdm) {
Note: See TracChangeset for help on using the changeset viewer.