Aide:TemplateData
Note : si vous modifiez cette page, vous acceptez de placer votre contribution sous licence CC0. Plus d’informations sont disponibles sur le projet Aide dans le domaine public. |
TemplateData est une extension qui stocke les informations et les paramètres associés à un modèle de wikicode et les met à la disposition d'une interface d'édition qui peut les récupérer et les présenter dans un éditeur de modèles -- tout cela aide les utilisateurs à ajouter et à modifier des modèles sur les pages.
Depuis avril 2019, la fonctionnalité « données de modèle » fait partie de l'expérience utilisateur par défaut pour tous les utilisateurs de tous les wikis Wikimedia lorsqu'ils ajoutent un modèle, même pour les utilisateurs non enregistrés. À la fois l'éditeur de source (wikicode) et l'éditeur visuel l'intègrent à leur manière, comme le font beaucoup de scripts, d'outils et de gadgets. Si vous souhaitez avoir cette fonctionnalité sur votre propre wiki, installez l'Extension:TemplateData .
Pour ajouter les données de modèle à un modèle utilisé par cette extension, il faut insérer simplement un petit bloc JSON (expliqué ci-dessous) dans la page de documentation du modèle. Vous pouvez le faire manuellement ou avec l'éditeur de données du modèle, une interface utilisateur graphique à laquelle vous pouvez accéder via les pages « Modifier »/« Modifier le wikicode » d'un modèle sur les wikis ayant l'extension TemplateData installée. Les données JSON contiennent la liste des paramètres du modèle avec les informations concernant ceux-ci et le modèle lui-même (voir ci-dessous pour les détails).
Les modèles qui ont des données de modèle affichent ces informations dans l'interface utilisateur quand un utilisateur ajoute le modèle. Dans certains cas, cela changera le comportement de l'éditeur lors de la modification ou l'insertion du modèle, facilitant grandement le parcours des étapes nécessaires pour ajouter ce modèle.
Historique
À l'origine, TemplateData a été développé début 2013 pour VisualEditor qui était en phase de test MediaWiki à l'époque. L'éditeur visuel est l'interface d'édition principale pour les wikis Wikimedia, et les données de modèle lui permettent d'avoir une interface plus utile pour ajouter des modèles. Il a été officiellement supporté par l'éditeur visuel immédiatement. Alors que l'éditeur visuel était déployé sur les différents wikis Wikimedia majeurs en tant que fonctionnalité par défaut de 2013 à 2016, les TemplateData en faisaient déjà partie.
En décembre 2016, l'interface de l'éditeur visuel a été rendue disponible pour l'édition du code source en tant que fonctionnalité bêta. Cela a été appelé Éditeur de wikicode 2017 . Cela a porté les fonctionnalités des données de modèle dans l'édition des sources pour la première fois.
En mars 2018, Sam Wilson a développé TemplateWizard , une extension graphique de l'éditeur de modèle pour l'éditeur de source par défaut de Wikimedia, WikiEditor (aussi connu comme l'éditeur wikitexte 2010), conçu pour faciliter l'ajout de modèles en utilisant les informations de données de modèle. En avril 2019, TemplateWizard est devenu une fonctionnalité par défaut de l'éditeur de wikitexte 2010 sur tous les wikis Wikimedia. Cela signifiait que les données de modèle faisaient désormais partie par défaut de l'éditeur visuel et de l'éditeur source sur les wikis Wikimedia.
Ajouter ou modifier TemplateData
Pour ajouter ou modifier les données de modèle, allez d'abord sur la page du modèle « /Modèle:nom du modèle ».
Vérification de l'état actuel
Avant d'ajouter ou de modifier des données de modèle, vérifiez si le modèle a une sous-page de documentation. Ensuite vérifiez si le modèle contient déjà des données de modèle, et dans ce cas si elles sont placées dans la page du modèle ou dans sa sous-page de documentation.
Sous-page de documentation
Concernant les modèles et sur la plupart des wikis Wikimedia, il y a deux techniques pour enregistrer le manuel d'utilisation et les autres données comme les catégories, qui ne doivent pas être incluses dans la partie exécutable du modèle :
- la plupart des modèles gardent leur mode d'emploi et les autres données n'appartenant pas au modèle lui-même dans une sous-page de documentation « /Modèle:Nom du modèle/doc ». Sur de telles pages, le modèle {{Documentation }} transclut le contenu entier de la sous-page /doc dans la page du modèle ce qui rend le code source du modèle plus lisible.
- quelques pages de modèles placent directement ces informations dans la page principale du modèle. Dans ce cas, il s'agit du contenu qui suit
{{Documentation|content=
et qui est compris entre les balises<noinclude>
.
Sur des wikis différents, tout ceci peut apparaître différemment.
Il est rare que la page principale du modèle contienne encore la documentation même si vous avez vérifié ce qui a été dit précédemment;
cela arrive quand un utilisateur a ajouté une page /doc avec un titre personnalisé entre « {{Documentation|
» et « |content=
» et a ensuite ajouté du contenu après « |content=
».
Vous pouvez aussi chercher une note en bas de page similaire à « La documentation ci-dessus est transcluse du Modèle:NomDuModèle/doc ».
Modèles sans sous-page de documentation
Si un modèle n'a pas de sous-page de documentation, créez-la et placez-y la documentation du modèle (ou son point d'entrée). Vous pourrez ensuite ajouter des données de modèle à cette sous-page de documentation.
Créer la sous page de documentation et déplacer le contenu de la documentation
Pour créer la sous-page de documentation, cliquez sur « Modifier » / « Modifier le wikicode » de la page d'accueil du modèle ; cherchez les balises <noinclude>
et leur contenu (habituellement en bas).
Cela devrait se présenter ainsi :
<noinclude>
{{Documentation|content=
== Utilisation ==
Informations sur l'utilisation.
== Autres exemples de titres ==
Autres exemples de contenu
[[Catégorie:Exemple de catégorie]]
[[Catégorie:Exemple de catégorie 2]]
}}
</noinclude>
Vous pouvez également constater qu'il exite déjà des données de modèle. Si c'est le cas, cela ressemblera à :
<noinclude>
{{Documentation|content=
...
<templatedata>
{
"description": "",
"params": {
"1": {
"label": "Exemple de paramètre",
"description": "Exemple de description de paramètre",
"type": "string"
}
}
}
</templatedata>
</noinclude>
Selectionnez tout ce qui suit « |content=
» et jusqu'avant « </noinclude>
» puis copiez-le dans votre presse papier ou enregistrez-le dans un document temporaire. Supprimez « |content=
», en ne laissant que :
<noinclude>
{{Documentation}}
</noinclude>
Enregistrez alors la page du modèle.
Maintenant, pour créer la nouvelle sous-page, regardez dans la barre d'adresse de votre navigateur et ajoutez /doc
à la fin de l'URL.
Cliquez sur ↵ Enter, puis choisissez l'option pour créer une nouvelle page.
Si ce wiki possède un modèle de notification {{Documentation subpage }}, ajoutez-le en haut de la nouvelle page. Vous souhaitez peut-être également ajouter d'autres modèles, tels qu'un lien {{Purge button }} ou {{Purge }} (s'il est pris en charge par le wiki en question).
Insérez le texte que vous avez coupé ou enregistré du texte précédent (sous la notice du modèle, si c'est le cas).
Encadrez les catégories avec des balises <includeonly>
afin qu'elles ne s'appliquent que sur la page d'accueil du modèle :
<includeonly>
[[Category:Example category]]
[[Category:Example category 2]]
</includeonly>
Beaucoup de wikis possèdent un modèle {{Sandbox other}}
.
Utilisez ce modèle ici s'il est possible que le modèle que vous modifiez existe dans une version bac à sable (située dans Template:NomDuModèle/sandbox
) afin d'empêcher les catégories de s'appliquer à la page du bac à sable :
<includeonly>{{sandbox other||
[[Category:Example category]]
[[Category:Example category 2]]
}}</includeonly>
Publiez enfin la page.
Vous pouvez maintenant ajouter et modifier les TemplateData de la sous-page de documentation en utilisant les règles décrites ici.
Ajouter ou modifier les TemplateData sur la page principale du modèle
Si vous ne pouvez pas créer la page /doc
, vous pouvez ajouter et modifier les TemplateData sur la page d'accueil du modèle en suivant les instructions décrites ici.
Si un modèle possède une sous-page de documentation, vérifiez à la fois la page d'accueil et la sous-page de documentation quant à la présence de TemplateData (balise <templatedata>
suivie d'un tableau encadré d'accolades : {}
).
Par ailleurs l'extension TemplateData peut faire ce contrôle pour vous. Cliquez sur « Modifier » ou « Modifier le wikicode » sur chaque page. Si le modèle possède déja des TemplateData sur l'une des pages, vous verrez une notice jaune en haut de la page disant soit :
- Veuillez noter : il y a déjà une section données du modèle sur la page liée « Modèle:Templatename/doc ».
ou
- Veuillez noter : il y a déjà une section données du modèle sur la page liée « Modèle:Templatename ».
Si le modèle a des TemplateData sur la sous page de documentation
Si le modèle possède des TemplateData sur sa page de documentation, c'est celle-ci que vous devrez modifier. Pour faire cela cliquez sur « [edit] » qui se trouve après le titre « Template documentation » (ou équivalent) ou si vous êtes déjà sur la page /doc, cliquez sur « Modifier » ou « Modifier le wikicode » en haut. Suivez les règles suivantes pour ajouter ou modifier les TemplateData.
Si le modèle possède des TemplateData sur sa page d'accueil
Si le modèle possède des TemplateData sur sa page d'accueil, vous avez encore une fois deux options :
- Vous pouvez aller sur sa page de documentation. C'est l'option recommandée.
- Ou vous pouvez les modifier sur la page d'accueil du modèle.
Déplacer les TemplateData vers la sous page de documentation
Pour faire cela cliquez sur « <noinclude>
» / « Modifier » de la page d'accueil du modèle et cherchez les balises <templatedata>
à l'intérieur des balises <noinclude>
.
Ce qui devrait ressembler à quelque chose comme :
<noinclude>
{{Documentation}}
<templatedata>
{
"description": "",
"params": {
"1": {
"label": "Exemple de paramètre",
"description": "Exemple de description de paramètre",
"type": "string"
}
}
}
</templatedata>
</noinclude>
Retirez du code simplement les balises <templatedata>
avec leur contenu, et enregistrez la page.
Ensuite, modifiez la sous-page de la documentation en cliquant sur [edit]
qui se trouve après le titre Template documentation
(ou équivalent).
Saisissez un titre, comme « TemplateData » puis collez les TemplateData en-dessous.
Vous pouvez maintenant mettre à jour les TemplateData en vous appuyant sur les règles décrites ici.
Éditer TemplateData sur la page principale du modèle
Si vous ne souhaitez pas déplacer les TemplateData vers la page /doc , vous pouvez les modifer sur la page principale du modèle. Voir les méthodes sur la manière de modifier les TemplateData.
Si le modèle n'a pas encore de TemplateData mais a une sous page de documentation
Si le modèle ne possède pas encore de TemplateData, vous devez les ajouter sur la sous-page de documentation.
Pour faire cela cliquez sur « [edit] » qui se trouve après le titre « Template documentation » (ou équivalent) ou si vous êtes déjà sur la page /doc, cliquez sur Modifier ou Modifier le wikicode en haut. Entrez un titre tel que TemplateData, puis ajoutez-les sous ce titre. Cette section explique comment ajouter les TemplateData.
Méthodes
Méthode de l'éditeur TemplateData
Ceci est une manière facile pour ajouter ou modifier les TemplateData, recommandée pour les utilisateurs moins expérimentés.
L'éditeur TemplateData est une interface graphique utilisateur pour ajouter et modifier TemplateData. Il fait partie de l'extension TemplateData, disponible sur toutes les pages des modèles (ou de la sous-page de documentation) en cliquant sur « Modifier » ou « Modifier le wikicode » .
Après avoir cliqué sur « Modifier » ou « Modifier le wikicode », un bouton apparaît au-dessus de la zone de modification et le titre de la page devient « Modifier les données du modèle ».
Cliquer sur ce bouton permet d'entrer dans l'éditeur de TemplateData. Si la page que vous éditez contient une section TemplateData, elle sera automatiquement affichée ici.
Fonctionnalités de la fenêtre ci-dessus :
- L'élément supérieur sélectionne la langue du texte de l'interface. Cela vous permet d'entrer le contenu textuel dans plusieurs langues, affiché aux utilisateurs en fonction des paramètres de leurs Préférences et non basé sur la langue du wiki; des wikis différents possèdent des bases de données de modèles complètement différentes. S'il n'existe pas de TemplateData par langue, l'interface ne propose à l'utilisateur que la langue propre au wiki mais les utilisateurs peuvent cliquer sur « Ajouter une langue » pour ajouter plus d'entrées. Le code de langue est affiché entre crochets à côté des paramètres sur lesquels il peut être appliqué, tels que les descriptions et les étiquettes.
- L'élément suivant est la description du modèle. Il s'agit de la description globale; elle est affichée aux utilisateurs à différents endroits des éditeurs de modèle lors de l'ajout d'un modèle. Ce paramètre et ses actions sont détaillés ici.
- Le troisième élément contrôle la mise en forme du wikicode du modèle. Ce paramètre détermine la manière dont le wikicode est affiché lorsque l'utilisateur clique sur « Appliquer » ; les deux possibilités principales sont
"inline"
(sur une même ligne) et"block"
(sur des lignes séparées). Ce paramètre et ses actions sont détaillés ici.
- Si l'utilisateur choisit « Personnalisé », il peut entrer le wikicode sous « Chaîne de format personnalisé » en suivant les règles des Formats personnalisés décrites ci-après, afin de créer un affichage personnalisé pour le modèle quand l'utilisateur clique sur « Appliquer ».
- Le quatrième élément configure les paramètres d'un modèle. Ce champ les affiche sous forme de liste s'ils ont déja été définis dans TemplateData. Si le code source du modèle spécifie des paramètres qui n'ont pas de TemplateData, un bouton « Ajouter 2 paramètres suggérés » apparait. L'éditeur extrait ces suggestions du code source du modèle en cherchant
{{{parametername}}}
ou{{{parametername|}}}
. En cliquant sur « Ajouter 2 paramètres suggérés » vous ajouterez ces paramètres en utilisant leur nom tel qu'il est déclaré dans le code source. Une information en vert apparait aussi en haut, comme par exemple « 2 nouveaux paramètres ont été importés : nom des paramètres. » . - En bas de la fenêtre le bouton « Ajouter un paramètre » vous permet d'ajouter manuellement un paramètre avec son nom personnalisé.
Continuez jusqu'à l'étape suivante en cliquant sur n'importe quel paramètre de la liste. Ceci vous permet de modifier les informations associées à ce paramètre.
Toutes ces fonctions et leurs actions sont décrites dans cette section.
- En cliquant sur « Supprimer les informations du paramètre » vous supprimez de TemplateData, le paramètre avec toutes les informations qui lui sont associées. Vous ne pouvez pas revenir en arrière pour les récupérer ni annuler ceci à l'intérieur de TemplateData sauf si vous cliquez ensuite sur « X ». Vous pouvez annuler toute modification faite après « Appliquer » en cliquant sur Ctrl+Z.
- La sortie de l'éditeur des TemplateData après avoir réalisé les modifications vous demande de confirmer l'annulation de vos modifications.
Lorsque vous avez terminé, cliquez sur « Appliquer ».
Ceci va automatiquement insérer les TemplateData en bas de la page, avant la balise </noinclude>
; ou, si elles sont déjà présentes, elles seront mises à jour avec les nouvelles informations sans en modifier la position.
Le texte des TemplateData sera également sélectionné quand vous cliquerez sur « Appliquer ».
L'éditeur des TemplateData crée un paramètre "paramOrder"
au bas de TemplateData (ou le met à jour s'il existe déjà).
"paramOrder"
contient les paramètres actuels de TemplateData dans l'ordre affiché par leur éditeur.
Vous pouvez changer "paramOrder"
en faisant glisser les paramètres vers le haut ou vers le bas dans l'éditeur des TemplateData en utilisant les trois barres horizontales de gauche.
"paramOrder"
et ses conséquences sont décrites ici.
Puis, cliquez sur « Enregistrer » pour enregistrer votre version de la page.
Méthode manuelle
Vous pouvez aussi ajouter ou modifier manuellement les TemplateData.
TemplateData est écrit en JSON, mais vous n'avez pas besoin d'apprendre JSON pour savoir comment créer TemplateData.
TemplateData suit quelques règles très simples et n'accepte qu'une petite douzaine de paramètres prédéfinis avec leur valeurs, typiquement en suivant un format "parameter": "value"
.
Ajouter TemplateData manuellement
Cas :
- Si vous ajoutez les TemplateData à la sous-page de documentation d'un modèle (ce qui est recommandé), vous pouvez les ajouter n'importe où sur la page ; vérifiez si la Wikipedia de votre langue a un endroit préféré pour ces données. Par exemple, pour la Wikipedia anglophone, les TemplateData se trouvent typiquement en bas de la page de documentation ; par contre, sur la Wikipedia allemande, elles sont en haut.
- Si vous ajoutez des TemplateData à la page d'accueil d'un modèle, ce qui (n'est pas recommandé; voir les vérifications initiales ici), vous devez vous assurer qu'elles sont encadrées avec des balises
<noinclude>...</noinclude>
.
Cliquez sur « Modifier» ou « Modifier le wikicode » en fonction de la page, puis allez à l'endroit de la page où vous voulez ajouter les TemplateData et placez le titre : TemplateData
.
Plusieurs wikis ont un modèle {{TemplateData header }} qui ajoute une courte notice concernant les TemplateData. Si c'est le cas avec votre wiki, ajoutez-la après le titre.
Pour commencer à ajouter les TemplateData, entrez une balise <templatedata>
ouvrante et fermante et une paire d'accolades sur de nouvelles lignes séparées par une ligne vide :
<templatedata>
{
}
</templatedata>
Puis créez une indentation sur la ligne vide entre les deux accolades et commencez à ajouter les paramètres. Le détail des paramètres est donné ici. La plupart sont facultatifs ; certains sont très recommandés.
Les paramètres peuvent être dans un ordre quelconque, mais suivent l'ordre qui se rapproche le mieux de la documentation des TemplateData rendant le contenu plus facile à utiliser pour les éditeurs :
<templatedata>
{
"description": "",
"format": "",
"params": {
"parameter1": {
"aliases": ["",""]
"label": "",
"description": "",
"type": ""
}
},
"paramOrder": [
""
]
}
</templatedata>
Assurez-vous que les paramètres, par exemple dans l'objet "params"
, restent à l'intérieur de cet objet, sinon vous déclencherez une erreur "Propriété « properlyname » non attendue." lorsque vous tenterez d'enregistrer.
Exemple
Voici quelques exemples de TemplateData pour une réorganisation hypothétique d'un modèle. Un tel modèle est censé afficher une notice et placer la page dans une catégorie datée basée sur le mois et l'année de la saisie. Il est également possible que la notice contienne un lien vers une section de la page de discussion. Les TemplateData vont donc ressembler à ceci :
<templatedata>
{
"description": "Utilisez ce modèle pour signaler qu'un article doit être réorganisé.",
"format": "inline",
"params": {
"date": {
"label": "Mois et année",
"description": "Mois et année au cours de laquelle le modèle a été ajouté",
"type": "string",
"autovalue": "{{SUBST:CURRENTMONTHNAME}} {{SUBST:CURRENTYEAR}}",
"example": "janvier 2013",
"suggested": true
},
"reason": {
"aliases": ["1"],
"label": "Motif",
"description": "Motif pour lequel l'article doit être réorganisé",
"type": "string"
},
"talk": {
"aliases": ["section de discussion"],
"label": "Section de la page de discussion",
"description": "Section de la page de discussion contenant la discussion correspondante",
"type": "string"
}
},
"paramOrder": [
"date",
"reason",
"talk"
]
}
</templatedata>
La documentation correspondante de TemplateData s'affiche ainsi :
Utilisez ce modèle pour signaler qu'un article doit être réorganisé.
Parameter | Description | Type | Status | |
---|---|---|---|---|
mois et année | date | Mois et année au cours de laquelle le modèle a été ajouté
| String | suggested |
Motif | motif 1 | Motif pour lequel l'article doit être réorganisé | String | optional |
Section de la page de discussion | discussion section de discussion | Section de la page de discussion contenant la discussion correspondante | String | optional |
Paramètres de TemplateData
Tous les paramètres de TemplateData disponibles (c'est à dire ceux entre les balises <templatedata>...</templatedata>
du wikicode) sont énumérés ci-dessous avec leur description et un exemple.
Ils sont également répertoriés avec plus de détails techniques sur le format des TemplateData ici.
- Ces informations sont à jour en novembre 2021 et peuvent changer si de nouveaux paramètres sont ajoutés ou si les interfaces d'édition des modèles sont mises à jour pour prendre en charge les paramètres existants ou traiter certains paramètres différemment.
- La syntaxe wiki ne fonctionne pas dans les descriptions ni dans les étiquettes. Ce sont purement des chaînes de texte brut.
- Les passages à la ligne («
\n
») dans les descriptions, les étiquettes, les exemples ou les valeurs par défaut n'apparaissent pas dans aucun des éditeurs principaux (TemplateWizard, l'Editeur visuel ou l'éditeur de wikicode 2017 wikitext), bien qu'ils apparaissent dans la documentation auto-générée des TemplateData. Ils sont remplacés par la chaîne vide dans les formulaires de saisie et ailleurs par un espace.
Paramètre | Description | Exemple |
---|---|---|
description |
Le paramètre Actions Sur la page de documentation du modèle, la description s'affichera en texte brut sous la section "Données du modèle [nom du modèle]". Dans chaque éditeur principal (VisualEditor , le Éditeur de wikicode 2017 et le WikiEditor avec l'assistant de modèles), la description s'affiche dans deux instances principales :
Dans l'Editeur visuel et dans l'éditeur de wikicode 2017, les descriptions sont tronquées à 50 caractères environ sous chaque suggestion de recherche, et suivies par un « ... », mais la description est affichée entièrement dans la fenêtre principale de l'éditeur de modèles. Les deux apparaissent en texte grisé. Dans la fenêtre principale de l'éditeur de modèle, les descriptions qui dépassent quatre lignes (soit environ 540 caractères) sont présentées en texte noir et avec un ascenseur séparé. Si non spécifié Si le paramètre de description n'existe pas ou qu'il n'est pas spécifié, le texte « Aucune description. » sera affiché dans la documentation des TemplateData sous le sous-titre « Template data pour [NomDuModèle] ». Et aussi :
|
"description": "Un modèle pour créer un lien vers une catégorie de Commons",
|
format |
La suivante est Ce paramètre n'est pas obligatoire mais il est recommandé. Le comportement par défaut lorsque ce paramètre n'est pas fourni est de préserver le formatage existant pour les paramètres présents, ou le format en ligne des nouveaux paramètres ajoutés ainsi que les modèles. Conséquences En ligne : ( Lorsqu'il est ajouté, le modèle affiche ainsi son wikicode sur une seule ligne, sans espace entre les éléments :
Bloc : ( Lorsque vous ajoutez ce modèle, il va distribuer chacun de ses paramètres sur une ligne distincte, avec un espace entre chaque élément, de la manière suivante : {{Foo | bar = baz | longparameter = quux }} Formats personnalisés : Notez aussi que si le paramètre est initialisé avec une chaîne wikicode personnalisée, conformément aux règles sur les formats personnalisés énoncées ici, le modèle affichera la notice des préférences dans la documentation de ses TemplateData : |
"format": "inline"
|
params |
L'objet ll doit contenir le nom de chaque paramètre suivi d'un ensemble de sous-paramètres de Templatedata listés ici dans le paragraphe du non de paramètre. S'il y a plusieurs paramètres, placez une virgule entre chaque objet paramètre, mais n'en ajoutez pas après la dernière accolade (voir exemple). |
"params": {
"parameter1": {
... // informations sur le paramètre
}, // notez la virgule ici
"parameter2": {
... // informations sur le paramètre
}, // et ici
"parameter3": {
... // informations sur le paramètre
} // mais pas ici
}
|
paramOrder |
L'objet Comment l'utiliser Ajoutez le paramètre Il n'est pas utile que les paramètres soient sur des lignes séparées (on peut les écrire comme Nous vous recommandons de placer Vous devez inclure chaque paramètre mentionné dans les TemplateData; sinon une erreur « Propriété « propertyname » obligatoire non trouvée. » apparaîtra. Si ce n'est pas défini Sans Avec les autres paramètres Dans l'éditeur de wikicode 2010 avec TemplateWizard :
Dans l'Editeur visuel et l'éditeur de wikicode 2017, |
"paramOrder": [
"date",
"reason",
"talk"
]
|
Dans params
Paramètre | Description | Exemple |
---|---|---|
Nom du paramètre |
Le seul élément de niveau un de l'objet Par exemple, dans le code source d'un modèle, Il est également possible de voir des paramètres appelés
Notez-bien : un utilisateur peut toujours forcer l'utilisation de Comment l'utiliser Chacun de ces objets « Nom du paramètre » doit contenir toutes les informations concernant le paramètre sous la forme de paramètre supplémentaire TemplateData. Ils sont listés dans la section suivante. |
"1": { // nom du paramètre
... // les informations sur ce paramètre viennent ici
}
|
Associé au paramètre nommé
Paramètre | Description | Exemple |
---|---|---|
aliases |
Le paramètre facultatif
ou
Cela signifie que si l'utilisateur ajoute l'un quelconque de ces paramètres avec une valeur, il réalisera la même fonction. Litéralement équivaut à « Value of parameter1. Si parameter1 n'existe pas ou s'il a pour valeur : valeur de parameter2. » Dans le second cas, cela signifie également, Si parameter2 n'existe pas ou s'il a pour valeur : aucune valeur. Pour insérer le paramètre |
"aliases": ["1", "talk", "talksection"],
|
inherits |
Pour utiliser ce paramètre, entrez |
"params": {
"sujet1": {
"label": "Sujet",
"description": "Un sujet mentionné sur cette page d’homonymie",
"type": "string"
},
"sujet2": {
"inherits": "sujet1"
},
"sujet3": {
"inherits": "sujet1",
"label" : "A different label"
}
}
|
label |
Ensuite, nous avons |
"label": "Mois et année",
|
description |
A l'intérieur de chaque objet nommé après un paramètre, |
"description": "Le mois et l'année à laquelle le modèle a été inséré.",
|
type |
Voir la section du paramètre Type. |
|
default |
Certains paramètres du modèle ont une valeur par défaut; celle-ci est utilisée à moins d'être redéfinie par l'utilisateur.
L'élément Actions Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et le 2010 avec TemplateWizard), le texte Avec d'autres paramètres Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et 2010 avec TemplateWizard), si |
"default": "Category:CommonsRoot",
|
autovalue |
Vous pouvez assigner Cette valeur peut être modifiée par l'utilisateur dans l'éditeur de modèle. Avec d'autres paramètres Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), |
"autovalue": "{{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}"
|
example |
Le paramètre Conséquences Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), cette propriété est affichée sous la description du paramètre (et en-dessous du texte Avec d'autres paramètres Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), |
"example": "January 2013",
|
suggested values |
La propriété de paramètre
Les autres types (file, page, template, user, date, boolean, URL) ne sont pas actuellement pris en charge car ils ont déjà des fonctionnalités spéciales dans l'Editeur visuel, comme l'autocomplétion, qui interférerait avec le menu déroulant pour les valeurs suggérées dans l'Editeur visuel. Modifier le JSON des TemplateData du wikicode Pour ajouter les valeurs suggérées à n'importe quel type de paramètre, ajoutez la nouvelle propriété "suggestedvalues" au paramètre en JSON. L'attribut “suggestedvalues” doit être une liste de chaînes de caractères. Mise à jour des TemplateData avec l'éditeur de TemplateData
Effets Une fois que les valeurs ont été ajoutées à TemplateData, l'Editeur visuel va les afficher dans une combo box (une liste déroulante dans laquelle les utilisateurs peuvent aussi entrer une valeur personnalisée) pour les types du paramètre listés au-dessus. L'utilisateur sélectionne la valeur choisie en cliquant dessus. Si la liste des valeurs est longue -- par exemple une liste d'états qui composent un pays -- l'utilisateur peut taper les premières lettres dans le champs, à la suite de quoi la liste sera filtrée pour aficher uniquement les valeurs qui contiennent le texte tapé. Pour modifier la valeur entrée, il faut simplement effacer le champs et la liste déroulante complète sera affichée à nouveau. Si l'utilisateur a besoin d'une valeur qui n'appartient pas à la liste (par exemple, « message personnel » ) il peut la saisir manuellement. |
"suggestedvalues": [
"Journal",
"Livre",
"Journal",
"Magazine"
]
|
Options de l'état | Description | Exemple |
---|---|---|
required |
Le paramètre Il détermine si le remplissage du paramètre donné est obligatoire pour le modèle. Conséquences Cet état a plusieurs conséquences sur l'Editeur Visuel et le Éditeur de wikicode 2017 :
Dans WikiEditor avec Extension:Assistant de modèle , tout comme avec les autres éditeurs, il affiche le paramètre automatiquement lorsqu'un utilisateur insère le modèle, mais le paramètre ne peut pas être supprimé avec aucun éditeur. Il n'affiche pas non plus « Le champ est obligatoire. » dans la description du paramètre mais il liste le paramètre sur le côté, sous « Paramètres obligatoires ». A part cela, le comportement général est le même qu'avec les autres éditeurs, sauf que l'invite indique que l'entrée « ne correspond pas au format attendu ». Avec d'autres paramètres Dans l'Editeur visuel et l'éditeur de wikicode 2017 l'état |
"required": true
|
suggested |
Le paramètre Utilisez Conséquences Dans l'Editeur visuel et le Éditeur de wikicode 2017 , cela fait que le paramètre s'affiche automatiquement lorsqu'un utilisateur insère un modèle. Si le paramètre possède une valeur automatique définie, elle figurera également dans sa boîte de saisie. Il n'a pas d'autre action et n'affiche pas de texte ni d'avertissements supplémentaires. Avec le WikiEditor et TemplateWizard, on ne place pas le paramètre dans le modèle automatiquement mais à la place on l'affiche sur le côté, sous « Paramètres suggérés ». L'utilisateur peut ensuite cliquer sur « + » à côté du paramètre pour l'ajouter au modèle. Avec d'autres paramètres L'état |
"suggested": true
|
deprecated |
Enfin vient Cet état concerne les paramètres qui ne doivent plus être utilisés, mais qui continuent d’exister pour le moment. Cela pourrait être parce que l'utilisation du modèle est en train de basculer d'un jeu de paramètres à un autre. Conséquences L'action de ce paramètre dans l'Editeur visuel et dans l'éditeur de code 2017 est d'afficher un point d'exclamation gris après l'étiquette du paramètre lorsqu'il est inséré, et dans la bulle d'information du paramètre, d'afficher sous la description du paramètre, le texte suivant « Le champ est obsolète. motif de l'obsolescence » en italiques grises. Il n'impacte pas la fonction ou l'utilisation du paramètre et n'affiche pas d'avertissements supplémentaires. En dépit du fait qu'il peut accepter une chaîne de caractères, depuis janvier 2020 aucun éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010) n'affiche le contenu de cette chaîne quelque part aux utilisateurs.
Entrer une chaîne de caractères a le même effet que Dans l'éditeur de wikicode 2010 avec TemplateWizard, la valeur Avec les autres paramètres Si vous mettez à la fois ceci à Si vous mettez à la fois ceci à Dans l'éditeur de wikicode 2010 avec TemplateWizard, |
"deprecated": "Utilisez 'publicationDate' à la place."
|
Notez-bien que si ni "required"
, ni "suggested"
ni "deprecated"
ne sont mis à true
pour un paramètre, son état sera affiché comme "optional"
(facultatif) dans la documentation des données du modèle.
Une fois que vous avez terminé, appuyez sur "Enregistrer". Si vous avez fait des erreurs, vous ne pourrez pas sauvegarder (ce qui est perturbant mais signifie que vous ne pouvez rien casser). Si vous rencontrez des erreurs, expliquez sur la page des commentaires de l'Editeur visuel ce que vous avez essayé de faire, et nous serons heureux de vous aider.
Signalons que si vous abusez d’un modèle astucieux pour générer dynamiquement les TemplateData, il ne pourra pas y avoir de vérification des erreurs avant la sauvegarde.
Notez que chaque élément d'information est entouré par des guillemets (") (sauf pour true
et false
), et séparée de la suivante par une virgule (sauf pour la dernière).
Paramètre de type
Le paramètre "type"
signale à l'éditeur de modèles la nature de la valeur d'un paramètre.
Dans certains cas, les éditeurs de modèles ont été programmés pour modifier l'interface utilisateur pour un paramètre donné en fonction de sa valeur dans les TemplateData, simplement pour permettre à l'utilisateur d'entrer des valeurs valides correspondant au type.
Ce paramètre n'a pas de conséquence sur le paramètre du modèle ni sur sa valeur; il contrôle simplement la manière dont les éditeurs de modèles voient et traitent le paramètre en mode édition.
Comment l'utiliser
Est utilisé en ajoutant le paramètre "type"
, suivi par deux-points et un espace, puis en ajoutant toute valeur listée dans la table ci-dessous encadrée de guillemets.
Exemple :
"type": "string",
Actions
Depuis février 2020, seuls 5 des 13 valeurs de type ont un effet visible dans l'Editeur visuel et l'éditeur de wikicode 2017, alors que 8 d'entre-eux ont des effets visibles dans le TemplateWizard.
Il est possible que les actions de certaines valeurs puissent changer avec la mise à jour des éditeurs de modèles qui les prennent en charge. Un exemple d'effort pour l'Editeur visuel et pour l'éditeur de wikicode 2017 est suivi dans la tâche Phabricator T55613. Un effort similaire pour obtenir que TemplateWizard prenne en charge les valeurs booléennes est suivi dans T200664.
Les effets actuellement connus sont listés ci-après.
Valeur | Description | |
---|---|---|
unknown |
Actions Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), | |
string |
La valeur Actions Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), | |
line |
La valeur Actions
| |
content |
La valeur Actions
| |
unbalanced-wikitext |
La valeur Actions
| |
wiki-page-name |
La valeur Actions Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), | |
wiki-file-name |
La valeur Actions
| |
wiki-template-name |
La valeur Actions Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), | |
wiki-user-name |
La valeur Actions Dans chaque éditeur principal (Editeur visuel, éditeur de wikicode 2017 et celui de 2010 avec TemplateWizard), | |
number |
La valeur Actions
Avec d'autres paramètres
| |
boolean |
La valeur Actions Comme depuis février 2020, aucun éditeur principal de Wikimedia (parmi le VisualEditor, l'éditeur de wikicode 2017 ou celui de 2010 avec TemplateWizard) n'utilisent cette valeur. Il n'a pas d'effet visible. Avec | |
date |
La valeur Actions
Avec d'autres paramètres
| |
url |
La valeur Actions
Avec d'autres paramètres
|
Formats personnalisés
Lorsque vous modifiez la valeur "format"
, vous créez les formats personnalisés en entrant un ensemble de symboles wikicode et en utilisant les règles prédéfinies.
{{
- début du modèle_
- contenu (comme, chaîne, entier ou paramètre). Ce caractère souligné sert à indiquer la longueur minimale d'une valeur en nombre de caractères et peut être répété, comme_______
. Si cette longueur n'est pas atteinte, les caractères restants sont remplacés par des espaces. Ceci peut être utilisé pour aligner tous les signes égal sur une position spécifique après un paramètre (dans le cas où on utilise\n
pour de nouvelles lignes).|
- pipe (barre verticale qui sépare les paramètres)=
- signe égal (précède la valeur d'un paramètre)\n
ou presser la touche Entrée - passe à la ligne suivante (sera affiché en tant que↵
dans le champs de saisie)\n
pour indenter les nouvelles lignes)}}
- fin du modèle
Le wikicode doit valoir au minimum {{_|_=_}}
, sinon vous recevrez un message d'erreur concernant un format non valide.
Objectif | Chaîne de format | Rendu |
---|---|---|
Formatage en ligne | {{_|_=_}} inline
|
{{Foo|bar=baz|longparameter=quux}}{{Bar}} |
Formatage en bloc | {{_\n| _ = _\n}} block
|
{{Foo | bar = baz | longparameter = quux }}{{Bar}} |
Pas d’espace avant le nom du paramètre,
chaque modèle sur sa propre ligne |
\n{{_\n|_ = _\n}}\n
|
{{Foo |bar = baz |longparameter = quux }} {{Bar}} |
Indenter chaque paramètre | {{_\n |_ = _\n}}
|
{{Foo |bar = baz |longparameter = quux }}{{Bar}} |
Aligner tous les noms de paramètres à une longueur donnée | {{_\n|_______________ = _\n}}\n |
{{Foo |bar = baz |longparameter = quux |veryverylongparameter = bat }} {{Bar}} |
Les caractères barre verticale mis à la fin de la ligne précédente | {{_|\n _______________ = _}}
|
{{Foo| bar = baz| longparameter = quux}}{{Bar}} |
Style en ligne avec plus d’espaces, doit être au début de la ligne. | \n{{_ | _ = _}}
|
{{Foo | bar = baz | longparameter = quux}} {{Bar }} |
Modèle au début de la ligne, paramètres indentés et alignés, barre verticale sur la ligne précédente. | \n{{_ |\n _______________ = _}}
|
{{Foo | bar = baz | longparameter = quux}} {{Bar}} |
Structure vierge
Vous pouvez copier la structure vierge ci-dessous pour ajouter un nouveau TemplateData à un modèle. Seules les étiquettes les plus courantes sont incluses.
<templatedata>
{
"description": "",
"params": {
"1": {
"label": "",
"description": "",
"type": ""
},
"2": {
"label": "",
"description": "",
"type": ""
}
}
}
</templatedata>
Erreurs
Erreur de syntaxe en JSON. / Bad JSON format (Erreur syntaxique JSON / Mauvais format JSON)
Ces erreurs apparaissent lorsque vous sauvegardez TemplateData, souvent modifié manuellement, avec du code JSON présent non valide (clés ou paramètres dupliqués, virgules absentes ou en trop, etc...) dans l'Editeur Visuel ou l'éditeur de wikicode 2017.
"Erreur de syntaxe en JSON." apparaît dans VisualEditor et l'éditeur wikitext 2017 ; "Bad JSON format" apparaît lors de l'édition avec l'éditeur de l'interface utilisateur de TemplateData.
Ces erreurs peuvent être difficiles à détecter et revêtent des formes différentes dans les listes. La meilleure manière pour les éviter est de modifier les données du modèle exclusivement avec l'éditeur de TemplateData; la meilleure manière de les détecter une fois qu'elles sont apparues est d'utiliser un valideur JSON externe, tel que JSONLint, qui mettra en évidence les erreurs et vous aidera a les corriger.
L'éditeur de wikicode 2010 ne vérifie pas le code JSON non valide grâce à un ancien bogue pas encore corrigé (tâche T128029). Les pages contenant du code JSON non valide affichent des messages d'alarme « Erreur interne ». Pour corriger ces erreurs, le plus simple est d'utiliser un valideur de code JSON (voir ci-dessus).
Propriété « paramOrder[numéro] » obligatoire non trouvée.
Cette erreur apparaît si vous utilisez un paramètre dans "params"
qui n'est pas utilisé dans "paramOrder"
.
Le numéro entre crochets fait référence au paramètre de "paramOrder"
qui manque. Il s'agit de son ordre dans la séquence et correspond à la position moins 1, car "paramOrder"
est un tableau; 0 est le premier index, 1 le second, etc.
"params": {
"date": { ...
},
"reason": { ...
},
"talk": { ... // <-- Ce paramètre n'est pas évoqué dans "paramOrder", mais il le devrait.
}
},
"paramOrder": [
"date",
"reason"
]
// Erreur: Required property "paramOrder[2]" not found. (la propriété n'existe pas)
Pour corriger cela, vérifiez que tous les paramètres utilisés dans "params"
sont listés dans "paramOrder"
.
Vous pouvez aussi supprimer l'objet "paramOrder"
pour supprimer cette erreur.
Valeur non valide pour la propriété « paramOrder[numéro] ».
Cette erreur apparaît si vous utilisez un paramètre dans "paramOrder"
qui n'est pas utilisé dans "params"
.
Le numéro entre crochets fait référence au paramètre de "paramOrder"
qui ne doit pas être là. Il s'agit de son ordre dans la séquence et correspond à la position moins 1, car "paramOrder"
est un tableau; 0 est le premier index, 1 le second, etc.
"params": {
"date": { ...
},
"talk": { ...
}
},
"paramOrder": [
"date",
"reason", // <-- Ce paramètre n'est pas évoqué dans "params", mais il le devrait.
"talk"
]
// Erreur : valeur non valide pour la propriété « paramOrder[1] ».
Pour corriger ceci, assurez vous que tous les paramètres présents dans "paramOrder"
sont listés dans "params"
.
Vous pouvez également supprimer l'objet "paramOrder"
pour éliminer cette erreur.
La propriété « params.nom_de_parametre.required » doit être de type « boolean ».
Cette erreur se produit lorsque vous mettez des guillemets autour de la valeur de "required"
ou de "suggested"
.
"suggested": "true" // <-- Ces guillemets ne doivent pas être ici.
Ce sont des valeurs booléennes et non des chaînes de caractères; c'est pourquoi elles n'ont pas besoin de guillemets.
Pour corriger cela, supprimez les guillemets autour des valeurs true
ou false
pour ces paramètres.
Property "format" is expected to be ... (La propriété "format" est normalement...)
Si le paramètre "format"
existe et que sa valeur n'est ni "inline"
, ni "block"
, ni une chaîne de format valide, le message d'erreur « La propriété « format » doit être « inline » (sur une ligne), « block » (multiligne) ou une chaîne de format valide. » est affiché.
"format": "notinline"
// Erreur : la propriété « format » suppose valoir « inline », « block », ou tout autre chaîne au format valide.
Pour corriger cela, vérifiez que la valeur après "format":
est égale à "inline"
ou "block"
et qu'il n'y a pas de fautes d'orthographe. Egalement, si c'est du wikicode, vous povez vérifier qu'il contient un minimum de {{_|_=_}}
et qu'il n'y a pas d'erreur de syntaxe qui pourrait faire échouer un modèle, comme deux fois le signe égal, ou des crochets absents ou en double; voir la section des formats personnalisés pour la syntaxe des formats correspondants.
Vous pouvez également supprimer le paramètre "format"
pour faire disparaître cette erreur.
Propriété « nom_de_parametre » non attendue.
Cette erreur apparaît lorsque vous utilisez un paramètre qui n'est pas connu dans les données du modèle. Ceci est probablement dû à des erreurs d'orthographe, ou à l'utilisation de lettres majuscules au lieu de minuscules.
<templatedata>
{
"description": "",
"format": "inline",
"params": {
"1": {
"label": "",
"descriptino": "", // <-- erreur d'orthographe
"type": ""
}
}
}
</templatedata>
Cela se produit aussi si vous utilisez le paramètre de n'importe quel objet TemplateData qui n'est pas un parametre de cet objet même. Il peut s'agit d'une erreur d'orthographe, ou vous avez écrit le paramètre d'un objet TemplateData sous un autre objet auquel il n'appartient pas.
Par exemple, il est possible que vous ayez déclaré le paramètre "label"
à la racine de l'objet TemplateData au lieu de le mettre à l'intérieur de "params"
:
<templatedata>
{
"description": "",
"format": "inline",
"label": "", // <-- paramètre mal positionné
"params": {
"1": { // ↓ it should be in here
"description": "",
"type": ""
}
}
}
</templatedata>
De manière similaire, si le paramètre inattendu se trouve sous un paramètre du modèle à l'intérieur de "params"
, vous verrez son nom après "params.NomDuParamètre." dans l'erreur.
Pour corrigez cela, vérifiez qu'ils n'y a pas de fautes d'orthographe dans les noms des paramètres, et vérifiez aussi que ces paramètres sont positionnés correctement. Assurez-vous aussi que vous n'utilisez aucun paramètre en dehors de ceux déclarés dans l'objet TemplateData. Vous pouvez voir les paramètres existants pour un objet dans la section Paramètres des TemplateData.
Propriété « params » obligatoire non trouvée.
Cette erreur (Propriété "params" demandée mais non trouvée) apparaît quand il n'existe pas d'objet "params"
dans les TemplateData.
Ceci est un objet nécessaire, car il contient tous les détails de chaque paramètre, donc pour corriger cette erreur, assurez-vous qu'il est bien ajouté et qu'il n'y a pas de fautes d'orthographe.
Voir la section ci-dessus sur la manière d'ajouter le paramètre "params"
.
Limitations et avis
- Fonctionnalités manquantes – TemplateData est vraiment un exemple d’outil qui a été créé avec de peu de fonctionnalités, dans l’espoir que les utilisateurs aideraient à guider le développement de fonctionnalités telles qu’ils le désirent. Si vous voulez demander de nouvelles fonctionnalités pour TemplateData, faites-le-nous savoir.
- Retards dans l'affichage des modèles – Après que TemplateData a été ajouté à un modèle, les métadonnées devraient être visibles immédiatement lorsque le modèle est ouvert dans l’éditeur visuel. Toutefois, il est possible que cela prenne plusieurs heures avant que les métadonnées ne soient affichées. Vous pouvez forcer la mise à jour en faisant une modification vide sur la page du modèle lui-même (pas la sous-page de documentation). Pour faire une modification vide, ouvrez la page du modèle en édition et enregistrez la page sans faire aucun changement ni ajouter de résumé de modification.
- Problèmes en cours – Une liste des bogues actuels et des demandes de fonctionnalités est disponible sur le gestionnaire de bugs Wikimedia.
Autres outils
- Aide:Extension:Assistant de modèle
- Une fenêtre de dialogue de la barre d'outils pour entrer le code wiki du modèle via un formulaire construit à partir de TemplateData.
- TemplateData Wizard
- Un outil qui génère un TemplateData grâce à une interface interactive.
- Skeleton TemplateData generator
- Un outil qui lit le wikicode source d’un modèle, essaye de trouver tous les paramètres utilisés et donne un squelette avec les paramètres listés.
- JSONLint
- Un outil qui vous permet de valider un JSON écrit à la main pour trouver les erreurs dans la syntaxe.
- Liste de tous les modèles avec TemplateData de ce wiki
- Sur la version allemande de Wikipédia, avec le modèle TemplateData, les template data sont affichées dans une boîte de dialogue, et le modèle est ajouté dans une catégorie des modèles ayant des template data.
- https://query.wikidata.org/ et Query Helper (assistant de requête)