[(#REM) Un modèle pour générer une FAQ ou un lexique à partir d'un fichier CSV. Ce modèle necessite les itérateurs (en plugin pour SPIP 2, inclus dans SPIP 3) Le modèle s'utilise de la façon suivante: où: - "XX" est l'id de la FAQ - "url" est l'URL du fichier CSV (TODO: permettre d'utiliser directement des id_document) - "lexique" existe alors un sommaire de type A|B|E|X|Z est généré et des titres sont placés entre les définitions à chaque changement de lettre - "niveau" si ce n'est pas spécifié les intertitres sont de niveau 3 (comme ceux de SPIP), sinon, ils prennent la valeur niveau. - "ex" désigne le nom de la colonne des exemples utilisés. si ex=truc la colonne utilisée sera ex_truc Le fichier CSV doit être construit de la manière suivante (ordre des colonnes indifférent): |{{ dt }}|{{ dd }}|{{ lettre }}|{{ ancre }}|{{ ex_* }}| | un mot | une déf | U | | SPIP est un joli mot | | autre mot | autre déf | A | ancre alternative | | où: - les colonnes dd et dt sont indispensables (si pas de dt: pas de définition du tout) - lettre est facultatif, mais necessaire si on veut un sommaire - ancre est facultatif, mais utile si on veut avoir des ancres bien précises pour certains mots. Sinon les ancres sont générées automagiquement: le dt est repris avec les espaces transformés en "_". ex.: un Mot -> un_Mot - ex_* est facultative. Il peut y en avir plusieurs ex_cas1, ex_cas2, etc. Elle contient des exemples qui ne s'affichent que si le paramètre ex est rempli par la valeur correspondante ]#SET{alea, #EVAL{rand()}} #SET{test,truc} 0}{si #ENV{lexique}|oui}>[ (#VALEUR{lettre}|trim|unique{lettre_pagin_#GET{alea}}|utf_8_to_unicode) | ] [(#ENV{lexique}|non)
] 0}> [ [(#ENV{lexique}|oui) [[(#COMPTEUR_BOUCLE|>{1}|oui)
] (#VALEUR{lettre}|trim|unique{lettre_faq_#GET{alea}}|utf_8_to_unicode)
] ]
(#VALEUR{dt}|trim|utf_8_to_unicode)
[(#VALEUR{dd}|trim|utf_8_to_unicode|propre)] [
(#VALEUR{[ex_(#ENV{ex})]}|trim|utf_8_to_unicode|propre)
]
]
#FILTRE{trim}