Template data is the standardized description of a template, used by the default VisualEditor, the optional 2017 wikitext editor and other tools to improve the …

Template data is the standardized description of a template, used by the default VisualEditor, the optional 2017 wikitext editor and other tools to improve the template-editing experience for the user. Both VisualEditor and the 2017 wikitext editor include a wizard to edit templates, but for the wizard to be most useful, it needs to present specific information to the user about each template, such as a short description of the template's purpose and its parameters. This information is codified formally (by any wiki editor) using template data.
Without template data, a list of supported parameters is automatically generated.
No information is provided about what the value of the parameter should be.
With template data, a list of supported parameters (and their description) is provided for the template when you insert it into an article or edit an existing template transclusion.
Template data provides context for each parameter, and makes it much easier for users to modify template transclusions in articles.
Anyone can help by adding template data to templates (particularly high-profile ones, such as infoboxes) so that they are easier to edit in VisualEditor. The recommended way to do so is by opening the template data editor by pressing the following button which appears at the top of the edit page:
You can also write template data manually. The following is a minimal example, placed on a template's documentation page as a new section, before the "See also" section if it exists:
==TemplateData==
{{TemplateData header}}
<templatedata>{
"description": "insert description here",
"params": {
"first parameter": {
"label": "x",
"description": "x",
"type": "string",
"suggested": true,
"autovalue": "derived automatic value",
"default": "default value",
"required": false
}
}
}</templatedata>
The template data tutorial explains in detail how to manually add template data information to a template.
The parameter property suggestedvalues lets you define a list of parameter values to be shown to VisualEditor users in a dropdown for easy selection. This can be done either directly in JSON or using the TemplateData editor with no coding required. Both methods are explained in detail below.
Once the values have been added to template data, the VisualEditor will display them in a combo box (a dropdown into which users can also enter a custom value). The user selects the desired value by clicking on it. If the list of values is long - for example, a list of a country’s states - the user can begin typing in the field, whereupon the list will be filtered to show only values containing the typed text. To change an entered value, the user must simply clear the field, and the full dropdown list will appear again. If the user needs a value not included in the list (for example, "message in a bottle") they can type it in manually.
For suggested values to be displayed in the VisualEditor, the parameter’s type must be set to one of the following options:
Other types (file, page, template, user, date, boolean, URL) are not currently supported because they have special functionalities in the VisualEditor already (such as autocomplete) which would interfere with the dropdown menu for suggested values in the VisualEditor.
To add suggested values to any parameter type, add the new property “suggestedvalues” to the parameter in JSON. The “suggestedvalues” attribute must be a list of strings.
An example might look like this:
"media_type": {
"label": "Type of media",
"example": "Newspaper",
"type": "string",
"description": "In what medium was the article published?",
"suggestedvalues": [
"Journal",
"Book",
"Newspaper",
"Magazine"
]
}
For the parameter types listed above, you can add suggested values using the template data editor.
Here you can see an example of how to add suggested values in the TemplateData editor.
Some templates import their TemplateData from WP:Wikimedia Commons. This can be done by using {{#invoke:TNT|doc}}. For example, {{#invoke:TNT|doc|Uses TemplateStyles}} loads TemplateData from c:Data:Templatedata/Uses_TemplateStyles.tab which is used in Template:Uses TemplateStyles/doc.
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.