Aide:Modèle/Avancé

Le WikiHalo rappelle à ses contributeurs que toute information ajoutée doit être officielle et vérifiable. Les contributions sans sources et les théories sur Halo Infinite seront rejetées.

Pour créer des modèles complexes, comme les Infoboxes, il est préférable d'avoir des notions de programmation.

Variables[modifier]

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|}}}}}}}}}

À 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 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).

Les modèles voués à être utilisés au sein d'une phrase (comme Modèle:Citer) ne doivent pas faire usage de ces codes. Les instructions d'utilisation doivent être portées sur la page de discussion du modèle.

Un modèle peut être appelé sur sa propre page sans risque de boucle infinie.

Fonctions du parseur[modifier]

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.