En étant un activiste du site « Biotechno pour les Profs », je suis confronté quotidiennement à l’incompréhension de futurs collègues ou de jeunes collègues devant certains sigles et acronymes utilisés dans nos textes.
Jean-Luc NAIL a développé de son côté un dictionnaire assez complet et en constante évolution sur son site
Depuis plusieurs années je repousse sans cesse la réalisation d’un script pour permettre un réaiguillage automatique des sigles écrits dans les textes vers leurs définitions sur le site Acro.Ecole.
Or, il y a quelques semaines, j’ai découverts que le fait d’encadrer un mot ou une expression par deux crochets et un point d’interrogation transformait ce mot en lien vers la page Wikipedia correspondante.
Voici ce que j’ai saisi dans le texte de cet article pour obtenir le lien ci-dessus :
[?wikipedia]
Je précise que Acro-école est basé sur un ensemble de scripts PHP intitulé acro-dico qui permet à quiconque de réaliser son propre dico de sigle.
Pour arriver au même résultat, j’ai détaillé 2 méthodes différentes. Chacune possède ses avantages et ses inconvénients.
- Conception d’un filtre dans mes_fonctions.php3 ;
- Configuration du fichier mes_options.php3 pour remplacer le raccourci wikipédia par le raccourci acro-ecole ;
Un exemple de fonctionnement !
Bon, d’accord, pour vous mettre un peu dans le bain, allez voir les sigles de cette brève de Biotechno pour les Profs.
Un simple filtre dans le fichier mes_fonctions.php3
Après avoir posé la question sur la liste de SPIP, Mathieu Lecarme a immédiatement posté une solution hyper simple.
Voyez le code suivant qui est à intégrer à votre fichier mes_fonctions.php3 situé à la racine de votre site. Jean-Luc Nail nous as même gratifié d’une page dédiée à notre filtre ! Il s’agit du filtre dénommé « mon_dico » :
function mon_dico($tartine){
return preg_replace('/\[#(.*)\]/U','<a href="http://acro.ecole.free.fr/spip.php?rech=$1" class="dico">$1</a>',$tartine);
}
NB : évidemment ce filtre est à ajouter à votre fichier mes_fonctions.php3 entre les balises php qui conviennent (<?php et ?>
). Mais si votre fichier mes_fonctions.php3 existe déjà, ces balises de début et de fin de fichier doivent déjà être présentes.
Faire utiliser le filtre par le squelette
Maintenant il faut dire à SPIP quand utiliser ce filtre et où. Ce qui nous intéresse c’est que les sigles présents dans le texte des articles soient liés à Acro.Ecole.
Il faut donc ajouter le filtre comme ceci :
[(#TEXTE|mon_dico)]
On peux également l’ajouter au Post-Scriptum de l’article, ce qui donne, pour une boucle article du fichier article.html :
<BOUCLE_article_principal(ARTICLES) {id_article}>
[(#LOGO_ARTICLE|left)]
[(#SURTITRE)]
[<h1>(#TITRE|supprimer_numero)</h1>]
[(#SOUSTITRE)]
[(#DATE|nom_jour)] [(#DATE|affdate).]
[Site internet : <a href="#URL_SITE">(#NOM_SITE)</a>]
[(#CHAPO)]
[(#TEXTE|mon_dico)]
[(#PS|mon_dico)]
[(#NOTES)]
</BOUCLE_article_principal>
Bien évidemment, ce filtre est à ajouter partout où l’on en a besoin (comme dans breves.html...).
Quel raccourci utiliser
Si on regarde bien le code ci-dessus, nous avons :
[#(.*)\]
ce qui signifie en bref que le sigle sera redirigé vers Acro.Ecole s’il est formatté de la sorte par le rédacteur de l’article ou de la brève :
[#SIGLE]
Personnaliser l’affichage des sigles liés
Dans le filtre est défini une class=« dico ». Ceci fait référence à la feuille de style du site (CSS). Nous pouvons donc aisément lui ajouter ceci :
/* ---------------------------------------- */
/* Feuille de style pour le lien acro.ecole */
/* ---------------------------------------- */
a.dico {
text-decoration: underline;
color: green;
}
a:hover.dico {
text-decoration: overline;
}
Seconde possibilité : configurer le fichier mes_options.php3
Parmis les nombreuses fonctionnalités du fichier /ecrire/mes_options.php3 il y a la possibilité de réaiguiller le raccourci de wikipédia vers une autre adresse.
Nous allons donc créer un fichier /ecrire/mes_options.php3 contenant le code suivant :
<?php
// url utilisée pour le glossaire
// lien vers le glossaire, raccourcis [?mot]
// $GLOBALS['url_glossaire_externe'] = ;
$GLOBALS['url_glossaire_externe'] = "http://acro.ecole.free.fr/spip.php?rech=" ;
?>
Dans ce cas de figure, vous n’avez besoin de rien faire d’autre. Vous saisissez simplement dans votre texte le code de wikipédia :
[?mot]
pour chaque sigle que vous voulez réaiguiller vers acro-école.
Le désavantage, c’est que vous perdez la possibilité de renvoyer des mots vers leur définition sur wikipédia.
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |