Aide:Modèle/Avancé
Pour créer des modèles complexes, comme les Infoboxes, il est préférable d'avoir des notions de programmation.
Variables[modifier le wikicode]
Les variables sont identifiées par un entourage de triples accolades : {{{Variable}}}
. Une variable peut être obligatoire ou non dans un modèle, et elle peut être nommée ou non :
- Variables non nommées : Un modèle appelé de cette manière
{{Modèle|Variable 1|Variable 2}}
utilise dans son codes des variables non nommées, qui se présentent ainsi :{{{1}}}
,{{{2}}}
. Le code{{{1}}}
prend la valeur de la première variable indiquée (dans notre exemple : « Variable 1 »),{{{2}}}
prend la deuxième valeur indiquée, et ainsi de suite pour les chiffres suivants. - Variables nommées : Un modèle appelé de cette manière
{{Modèle|Valeur=1|Poids=2}}
utilise des variables nommées représentées dans son code par{{{Valeur}}}
,{{{Poids}}}
. Contrairement aux variables non nommées, l'ordre des valeurs ne compte pas, uniquement le nom indiqué. - Valeur par défaut : Pour indiquer une valeur par défaut pour une variable, il faut indiquer cette valeur dans le code de la variable à droite d'un pipe :
{{{1|Par défaut}}}
. La valeur par défaut peut être laissée à vide.- Il est possible de rendre disponibles plusieurs noms de variables pour un même usage en exploitant la valeur par défaut : il suffit de définir le contenu d'une variable nommée comme la valeur par défaut d'une autre. Par exemple, ce code permet d'utiliser les noms Valeur, Paramètre ou bien la variable en première position :
{{{Valeur|{{{Paramètre|{{{1|}}}}}}}}}
- Il est possible de rendre disponibles plusieurs noms de variables pour un même usage en exploitant la valeur par défaut : il suffit de définir le contenu d'une variable nommée comme la valeur par défaut d'une autre. Par exemple, ce code permet d'utiliser les noms Valeur, Paramètre ou bien la variable en première position :
À noter que si une variable est susceptible d'accepter une liste comme valeur, aucun code ne doit précéder le sien pour que la liste fonctionne. En d'autres termes, les trois accolades entrantes doivent se trouver sur une nouvelle ligne.
Inclusion[modifier le wikicode]
Le code inscrit sur la page des modèles est conçu pour être appelés par d'autres articles, mais il est possible de définir le comportement de certaines portions de code en les plaçant entre certaines balises :
- Noinclude : Tout code se trouvant entre ces balises sera ignoré lors de l'utilisation du modèle. On placera les instructions d'utilisation du modèle entre ces balises.
- Includeonly : Le code se trouvant entre ces balises ne s'affichera que si le modèle est appelé, et pas sur sa propre page. Utilisé pour masquer le modèle sur sa page si nécessaire (si la configuration de base du modèle ne peut constituer un exemple).
Il ne faut pas insérer de lignes ou de retours à la ligne avant ou entre ces balises, car ils seraient inclus dans le modèle lui-même et perturberaient son affichage sur d'autres articles. Voir le code de Modèle:Citer pour un exemple de bon usage.
Un modèle peut être appelé sur sa propre page sans risque de boucle infinie.
Fonctions du parseur[modifier le wikicode]
L'extension ParserFunction fournie avec MediaWiki offre plusieurs types d'opérateurs logiques. En règle général, on effectue les tests sur des variables.
- Voir : Aide:Fonctions du parseur
Caractères à échapper[modifier le wikicode]
Certains caractères ne peuvent pas être utilisés normalement au sein du code ou d'un appel d'un modèle car ils interfèrent avec son fonctionnement. Ces caractères doivent être « échappés » avec une syntaxe particulière.
- La barre verticale | doit être échappée avec le code suivant :
{{!}}
. À utiliser en particulier si le code d'un modèle contient un tableau. Si le code d'un modèle fait appel à un autre modèle qui a besoin d'une barre verticale pour séparer ses paramètres, les barres verticales contenues dans l'appel du deuxième modèle n'ont pas besoin d'être échappées. - Lors de l'appel d'un modèle, si un paramètre commence ou se termine par une ou plusieurs espaces, elles seront automatiquement supprimées. Pour forcer la conservation des espaces, elles doivent être appelées avec leur code HTML.
- Pour une espace standard :
 
- Pour une espace non-sécable (interdisant un retour à la ligne) :
 
- Les codes ci-dessus ne fonctionneront pas si vous essayez de les copier-coller, puisqu'une espace invisible a été introduite pour permettre leur affichage dans cet exemple.
- Pour une espace standard :
Utilisation : Organiser le texte (Listes • Notes) • Formater le texte • Liens • Images & Médias (Téléverser • Capture d'écran • Galeries) • Redirections • Modèles (Avancé) & Infobox • Catégories • Renommer • Tableaux • Options d'utilisateur • Pages spéciales • Couleurs • Sous-pages • Fonctions du parseur Normes : Bonnes pratiques • Rédaction • Politique des spoilers • Sources (Chronologie) • Canon (Incohérences) • Discuter • Groupes et administration • Traduction • Construction de page • Acronymes en vigueur • Fan works Vocabulaire : Lexique de l'armement • Lexique de l'e-sport • Lexique du jeu vidéo • Lexique radio et militaire |