Manuel:Etendre le balisage wiki
Appearance
MediaWiki fournit un marquage standard du texte pouvant être facilement adapté. Il est possible de faire à la fois des adaptations individuelles et des adaptations globales :
- ajouter des types de balises standards : l'approche classique du marquage MediaWiki personnalisé est d'ajouter de nouvelles balises qui ressemblent aux balises XML déjà embarquées dans MediaWiki (
<tag>
) , aux modèles ({{...}}
), ou aux balises de liens ([[...]]
). - ajouter des types de balises personnalisés : certaines extensions définissent de nouveaux types de balises.
- modifier fondamentalement l'analyseur syntaxique : quelques extensions essaient de modifier fondamentalement la stratégie d'analyse afin que les balises d'autres types de wikis et la gestion de contenu puissent être (... doivent être) utilisées à la place du marquage standard.
Ajouts aux types de balises standards
- Extensions des fonctions de l'analyseur syntaxique : * extensions des fonctions d'analyse: les extensions des fonctions d'analyse étendent le traitement des modèles paramétrés et typiquement ressemblent à ceci :
{{#funcname ...}}
. Bien qu'aucun « nom de modèle » ne puisse être utilisé, les extensions personnalisées se trouvent toujours devant le nom de la fonction avec un #, comme dans l'exemple ci-dessus. Les autres noms des fonctions de l'analyseur sont réservés pour l'utilisation par le noyau de MediaWiki.
Lorsque{{#funcname ...}}
est implémenté en tant que fonction d'analyseur, elle passe ses paramètres de modèle à une fonction PHP au lieu de les passer à l'article de modèle habituel. Cette fonction retourne une chaîne de texte wiki qui remplace le modèle paramètré. Les fonctions d'analyseur sont utilisées pour manipuler la génération du texte wiki nécessitant une logique trop complexe ou trop confuse pour être codée à l'aide des techniques d'écriture habituelle des modèles. - Extensions de variables : les extensions de variables étendent le traitement des modèles sans paramètres.
A la place de la transclusion habituelle d'article,{{XXX}}
est associé à une fonction PHP qui retourne une chaîne de texte wiki qui le remplace. Ceci est habituellement utilisé pour injecter des informations système dans le marquage wiki (par exemple, l'heure actuelle ou la page courante). - extensions de marquage XML : les extensions du marquage XML (appelées aussi extensions de balises) définissent des balises personnalisées dans le style XML à l'intérieur du texte wiki : Le texte entre les balises est passé à une fonction PHP qui analyse le contenu de la balise et retourne une chaîne HTML qui remplace la balise et son texte. Le contenu à l'intérieur des balises peut être du marquage wiki, du texte brut ou formaté selon les règles imposées par la balise. Cela dépend de celui qui implémente l'extension. Veuillez lire la documentation propre à chaque extension.
<tagname parname="parvalue" ... parname="parvalue"> some text </tagname>
- Extension de balises de liens : les extensions de marquage des liens modifient la manière dont MediaWiki interprète les liens internes, par exemple le marquage wiki du type [[...]] .
- Extensions de syntaxe étendue : les extensions de syntaxe étendue, qui sont dans la plupart des cas des extensions de Mots Magiques, ajoutent à la liste des mots magiques de MediaWiki, des éléments comme
__NOTOC__
. Habituellement, une fonction PHP spécifique interprète ces mots, et soit les remplace avec autre chose, soit initialise certaines conditions pour un traitement ultérieur lors de la génération de la sortie, ou même fait les deux. Dans la plupart des cas, le remplacement est une chaîne vide; ce qui signifie que le mot magique est supprimé, et rien n'est affiché à sa place. Le traitement modifié peut impliquer l'addition d'un morceau supplémentaire de CSS, ou la suppression des paramètres de préférence utilisateur pendant la génération de la page, et peut pratiquement être tout ce que vous voulez.
Ajouter de nouveaux types de balises
Pour ajouter de nouveaux types de balises ou pour changer toute la stratégie du marquage, les développeurs doivent ajouter des fonctions à l'un ou à plusieurs des analyseurs existants et aux accroches de sortie des pages :
- Catégorie:Extensions liées à ParserBeforeStrip s'appuie sur l'accroche ParserBeforeStrip . (supprimé en 1.36)
- Catégorie:Extensions liées à ParserBeforeInternalParse s'appuie sur l'accroche ParserBeforeInternalParse .
- Catégorie:Extensions liées à OutputPageBeforeHTML s'appuie sur l'accroche OutputPageBeforeHTML .
- Catégorie:Extensions liées à ParserAfterTidy s'appuie sur l'accroche ParserAfterTidy .
See also Catégorie:Extensions par utilisation d'accroche .
Voir aussi
- Extensions - fournit les instructions générales pour trouver, installer et écrire des extensions.