Depuis le 18 août 2010, vous devez être identifié pour éditer des pages dans Rodovid (excepté Rodovid Engine). |
Aide:Fonctions parseur
Un article de Rodovid FR.
Fonctions permettant de paramétrer des variables au sein des modèles.
[modifier] Rappel et définitions
Un modèle est une page comme les autres. On peut en insérer le contenu là où on veut en écrivant:
- {{Nom du modèle}} (doubles-accolades)
Quand on change ce contenu, il est changé partout où il a été inséré avec le code ci-dessus.
Un modèle peut comporter des variables. Ce sont des portions du modèle qui sont adaptées au contexte, par l'utilisateur, au moment de chaque insertion du modèle. Dans le modèle, ces variables ont la forme:
- {{{Variable}}} (triples-accolades)
- et pour leur donner la bonne valeur au moment de l'insertion, le code à écrire est:
- {{Nom du modèle|Variable=valeur}}
- Quand on change le contenu du modèle, il est modifié partout où il a été inséré, sauf le contenu des variables.
Parser functions (parfois traduit par fonction parseur) :
En anglais, parser= analyseur.
Une fonction parseur, écrite dans un modèle, analyse l'état des variables au moment de l'insertion, et modifie des paramètres en fonction de cet état. Cette modification peut changer partiellement ou totalement l'aspect du modèle, une fois inséré.
La forme générale, dans un modèle, est:
- {{#nom de la fonction: variable | paramètre 1 | paramètre 2 | ...}}
À nouveau des doubles accolades. Mais il ne faut pas confondre avec la syntaxe d'insertion d'un modèle ou d'un mot magique.
[modifier] If
[modifier] Fonction
"If" permet de déterminer deux conséquences selon qu'il a été donné ou non une valeur à une variable.
[modifier] Syntaxe
{{#if: variable | résultat 1 | résultat 2 ...}}
► si il a été donné une valeur à la variable, alors résultat 1, sinon résultat 2.
[modifier] Exemple
Dans ce modèle, si une valeur est donnée à la variable alors le mot "blanc" apparaît sinon le mot "noir" apparait :
{{ #if: {{{variable}}} |blanc |noir }}
Copiez-collez la formule ci-dessous et indiquez une valeur ou non à la variable pour test :
{{Aide fonction parseur if |variable= }}
[modifier] Ifeq
[modifier] Fonction
"Ifeq" permet de comparer les valeurs de deux variables et de déterminer deux résultats selon qu'elles soient égales ou différentes.
[modifier] Syntaxe
{{#ifeq: variable 1 | variable 2 | résultat si égales | résultat si différentes}}
[modifier] Exemple
Dans ce modèle, si la variable 1 est égale à la variable 2 cela génère le mot "blanc", si elles sont différentes cela génère le mot "noir" :
{{ #ifeq: {{{variable 1}}} |{{{variable 2}}} |blanc |noir }}
Copiez-collez la formule ci-dessous et indiquez une valeur à chacune des variables pour test :
{{Aide fonction parseur ifeq |variable 1= |variable 2= }}
[modifier] Ifexist
[modifier] Fonction
Ifexist permet de déterminer 2 résultats selon l'existence ou non d'une page sur Rodovid FR.
[modifier] Syntaxe
{{#ifexist: variable | résultat 1 | résultat 2}}
►Si la valeur donnée à la variable est le nom d'une page qui existe sur Rodovid FR, cela génère le résultat 1, sinon cela génère le résultat 2.
[modifier] Exemple
Dans ce modèle, si la page existe alors un lien est créé, sinon le mot "rien" apparait :
{{ #ifexist:nom page |[[nom page]] |Rien }}
Copiez-collez la formule ci-dessous et indiquez un nom de page pour test :
{{Aide fonction parseur ifexist |nom page= }}
[modifier] Inconvénient majeur
Si la page cherchée par la fonction ifexist n'existe pas, cela provoque l'apparition d'un lien rouge dans la liste des "pages les plus demandées", et cela gène la maintenance de Rodovid FR.
[modifier] Switch
[modifier] Fonction
Switch permet de déterminer différentes valeurs possibles d'une variable et leurs résultats.
[modifier] Syntaxe
{{#switch: variable | valeur 1 = résultat 1 | valeur 2 = résultat 2 | ... | résultat par défaut}}
►Si la variable du modèle est égale à 1 cela donne le résultat 1. Si elle est égale à 2, c'est le résultat 2 qui est généré. On peut ensuite donner autant de valeurs que l'on désire à la variable et déterminer autant de résultats en conséquence. Si aucune des valeurs déterminées par le modèle n'est donnée à la variable alors cela produit le résultat par défaut.
[modifier] Exemple
Dans ce modèle, la variable peut prendre la valeur 1, ce qui a pour conséquence d'écrire "blanc", ou la valeur 2, dont la conséquence est d'écrire "noir", ou aucune de ces 2 valeurs, ce qui génère le mot "gris" :
{{ #switch: {{{variable}}} |1=blanc |2=noir |gris }}
Copiez-collez la formule ci-dessous et indiquez 1, 2 ou n'importe quelle valeur à la variable pour test :
{{Aide fonction parseur switch |variable= }}