Wikipedia:Editor visual/Plantillas tutorial
| ||
| ||
Acerca de | ||
---|---|---|
| ||
Ayuda con la implementación | ||
|
Qué es TemplateData?
[editar]TemplateData es un método de obtener información relativa a una plantilla y sus parámetros que permite a VisualEditor recuperarlos y mostrarlos, haciendo más fácil la edición de las plantillas.
TemplateData permite estructurar los datos de la plantilla y los translúcidos (la página de documentación). Una vez que la plantilla tiene sus datos estructurados, puede mostrarse apropiadamente en VisualEditor. Aunque suena bastante complejo, en realidad es muy fácil.
Estructura de TemplateData
[editar]La estructura de TemplateData, bastante sencilla, se basa en el estándar JSON.
Considerar los siguientes puntos:
- Incluir la etiqueta
<templatedata>
, en cualquier parte de la subpágina de documentación de la plantilla.
<templatedata> { ... <-- Contenido de TemplateData va aquí } </templatedata>
- Cuando se utiliza la plantilla, indica al software que todo el texto situado entre las etiquetas
<templatedata>...</templatedata>
es código del TemplateData y debe ser tratado como tal.
- El contenido del TemplateData debe escribirse en formato texto plano (no en wikitexto, enlaces, etc.).
- Cada elemento del código debe estar entre comillas (excepto
true
yfalse
), y separado del siguiente por una coma (a menos que sea la última).
Ejemplo
[editar]Las descripciones de un TemplateData siguen una distribución estándar. Si consideramos una plantilla llamada "Commons" para vincular a una categoría de Commons sobre un tema en particular, necesita un parámetro obligatorio: el nombre de la categoría en Commons. Su TemplateData sería algo como esto:
<templatedata>
{
"description": "Una plantilla para vincular una categoría de Commons sobre un artículo",
"params": {
"1": {
"label": "Categoría de Commons",
"description": "La categoría de Commons a la que desea vincular.",
"type": "string",
"required": true
}
}
}
</templatedata>
En pantalla se mostrará de la siguiente forma:
Una plantilla para vincular una categoría de Commons sobre un artículo
Parámetro | Descripción | Tipo | Estado | |
---|---|---|---|---|
Categoría de Commons | 1 | La categoría de Commons a la que desea vincular. | Cadena | obligatorio |
Descripción de las etiquetas
[editar]
La primera etiqueta "description" , describe lo que hace la plantilla.
|
"description": "Una plantilla para vincular una categoría de Commons sobre un artículo",
|
"params" , indica que las secciones siguientes son los parámetros de la plantilla.
Todos los parámetros están incluidos en la sección |
"params": {
... <-- los parámetros van aquí
}
|
En cada subsección de un parámetro, la primera etiqueta es el nombre del parámetro "dentro de la plantilla".
Si el parámetro tiene un nombre, como Toda la información relativa a un parámetro está incluida en la sección que comienza con su nombre. |
"1": { <-- nombre del parámetro
... <-- información acerca del parámetro aquí
}
|
"label" , es la etiqueta identificadora del parámetro.
|
"label": "Categoría de Commons",
|
"description" , contiene una descripción del parámetro, no de la plantilla.
|
"description": "Categoría de Commons a la que desea vincular.",
|
"type" , controla como debe tratarse el parámetro. Su valor puede ser:
|
"type": "string",
|
"required" , acepta los valores true o false .
Controla si es obligatorio o no dar un valor al parámetro. |
"required": true
|
Una vez completas todas las secciones, pulsar "save". Si hay errores, no se guardará, (lo que puede ser molesto, pero significa que no puede estropear nada). Verificar que cada elemento del código está encerrado entre comillas (excepto true
y false
) y separado del siguiente por una coma (a menos que sea la última).
Si hay algún error que no pueda resolver, puede explicar lo que trata de hacer en la página de comentarios, estaremos felices de ayudarle.
Alias de parámetros
[editar]Algunas plantillas permiten que un parámetro similar tenga diferentes nombres.
Por ejemplo,{{Commons|category=Apples}}
puede escribirse también como {{Commons|Apples}}
or {{Commons|link=Apples}}
.
Par agregar esta información a TemplateData, simplemente necesita agregar los alias a la información del parámetro:
"params": {
"categoría": {
...
"aliases": ["1", "enlace"]
}
Parámetros múltiples
[editar]Para incluir varios parámetros en <params>
, simplemente repita por ejemplo el "1" (comienza en " "1": { " y termina en " }, "), asignándole un nombre de etiqueta diferente y el código deseado. Tenga en cuenta que si una plantilla tiene varios parámetros, necesitará separarlos con una ",", de este modo:
"params": {
"1": {
...
}, <-- note la coma aquí
"2": {
...
}, <-- y aquí
"3": {
...
}
}
Parámetros similares
[editar]Cuando una plantilla tiene múltiples parámetros, si algunos son de la misma clase, es posible definir todas las propiedades únicamente en el primero, los demás pueden "heredarla".
"params": {
"tópico 1": {
"label": "Tópico",
"description": "Un tópico mencionado en esta página de desambiguación",
"type": "string",
},
"tópico": {
"inherits": "tópico"
},
"tópico3": {
"inherits": "tópico1"
},
}
Código de ejemplo básico
[editar]Para agregar un TemplateData a una plantilla, puede copiar el texto sin valores que se muestra a continuación, añadiéndole en cualquier parte de la subpagina de documentación de la plantilla. Sólo se incluyen las etiquetas más comunes.
<templatedata>
{
"description": "",
"params": {
"1": {
"label": "",
"description": "",
"type": "",
"required":
},
"2": {
"label": "",
"description": "",
"type": "",
"required":
}
}
}
</templatedata>
Limitaciones y preguntas
[editar]- Funciones faltantes — TemplateData es mucho más que un ejemplo de herramienta que se puso a disposición con algunas pocas funciones, con la esperanza de que los usuarios puedan ayudar a guiar el desarrollo de las características que se deseen. Si desea solicitar nuevas características para TemplateData, por favor háganoslo saber.
- Retrasos mostrando las plantillas — Luego de agregar TemplateData a una plantilla, los metadatos deberían ser visibles inmediatamente cuando la plantilla se abre en VisualEditor. Sin embargo, es posible que tome algunas horas antes que se se vean los metadatos. Usted puede forzar una actualización haciendo una edición nula a la página de la plantilla (no la subpágina de documentación). Para realizar una edición nula, abra la página de la plantilla para edición y grabe la página "sin hacer ningún cambio".
- Noticias actuales — hay disponible en Phabricator una lista actual de fallas y funciones solicitadas.
Herramientas
[editar]- w:fr:Utilisateur:Ltrlg/scripts/TemplateDataEditor.js — Script de un usuario que hace más fácil el proceso de agregar TemplateData (actualmente sólo disponible en Francés).