Una plantilla es una página de Wikipedia creada para ser incluida en otras páginas. Las plantillas suelen contener material repetitivo que es posible que deba aparecer en una mayor cantidad de artículos o páginas. Se utilizan comúnmente para mensajes repetitivos , advertencias o avisos estandarizados, cuadros de información , cuadros de navegación y propósitos similares. Las plantillas pueden tener parámetros para que una misma página genere texto diferente en varias páginas que la incluyan.
El método de inclusión más común se llama transclusión , donde la fuente wiki de la página de destino contiene una referencia a la plantilla, utilizando la sintaxis. Otro método es la sustitución , donde el contenido de la plantilla se copia en la fuente wiki de la página de destino, solo una vez, cuando se guarda.{{Template name}}
Ayuda: Una guía rápida de plantillas ofrece una breve introducción al tema. Hay más ayuda de MediaWiki y Wikimedia en mw:Help:Templates, m:Help:Template y m:Help:Advanced templates.
La mayoría de las plantillas están en el espacio de nombres de la plantilla , lo que significa que tienen títulos con el formato "Plantilla: XXXX ". Sin embargo, es posible transcluir y sustituir desde cualquier espacio de nombres, [a] y, por lo tanto, algunas páginas de plantilla se colocan en otros espacios de nombres, como el espacio de nombres de usuario . Las páginas de plantilla tienen páginas de discusión asociadas .
Las plantillas pueden contener cualquier wikitexto deseado , incluidas llamadas a otras plantillas. Hay cierta capacidad de programación: valores personalizables (a través de parámetros); cálculo y bifurcaciones (usando funciones de analizador ); y acceso a variables específicas de wiki ( palabras mágicas ), como fechas, horas y nombres de páginas. También pueden contener marcas para definir ciertas partes de la página que se incluirán mientras que otras no. Esto significa que cuando muestra la página de la plantilla en sí, es posible que vea más que cuando muestra una página que la incluye (por ejemplo, puede contener documentación, categorías, etc. para la plantilla).
Para llamar a una plantilla (hacer que se transcluya o sustituya en la página), una página contiene wikitexto entre llaves dobles. Por ejemplo, el wikitexto {{under construction}}
llama a la plantilla {{ en construcción }} . A veces la llamada incluye parámetros y tiene una apariencia similar a {{under construction|comment=This is a comment}}
. Tenga en cuenta que las llamadas a plantillas no son lo único para lo que se utilizan llaves dobles en wikitext.
Tenga en cuenta que, si bien las plantillas son la forma habitual en que se producen la transclusión y la sustitución en Wikipedia, no son la única forma.
Usar una plantilla es muy parecido a llamar a una función en un lenguaje de programación: llámala y devolverá un valor. Para una plantilla, el valor de retorno se denomina expansión de la plantilla y se trata como parte del origen de la página de llamada. Al igual que las funciones, algunas plantillas aceptan parámetros que afectan la salida.
Llamar a una plantilla hace que se transcluya o sustituya en la página que la llama (que se conoce como página de destino ).
Transcluir una plantilla significa que cuando MediaWiki muestra la página, trata la plantilla como si estuviera en la fuente wiki de la página, mientras que sustituirla significa que MediaWiki hace eso cuando guarda la página (es decir, el contenido de la plantilla se almacena como parte de la página de destino y los editores posteriores no pueden decir que llegó allí a través de una plantilla).
Para transcluir una plantilla en una página, ingrese la fuente de la página en el lugar donde aparecerá la plantilla. La primera letra de cada palabra del título puede estar en mayúscula o minúscula de manera equivalente.{{Template name}}
Para sustituir una plantilla en una página, utilice en su lugar.{{subst:Template name}}
Este wikitexto se llama llamada de plantilla .
En MediaWiki , el software wiki que utiliza Wikipedia, las variables son distintas de las plantillas, pero ambas están identificadas por llaves {{ }}
dobles y ambas devuelven un valor.
Mientras que los nombres de las variables de MediaWiki están todos en mayúsculas, los nombres de las plantillas tienen las mismas características y limitaciones básicas que todos los nombres de las páginas : distinguen entre mayúsculas y minúsculas (excepto el primer carácter); los guiones bajos se analizan como espacios; y no pueden contener ninguno de estos caracteres: # < > [ ] | { }
. Esto se debe a que están reservados para el marcado wiki .
El signo numérico #
indica un identificador de fragmento , que identifica un fragmento o sección de un documento (como una sección de un artículo de Wikipedia). Aunque puede usarlo en un vínculo para vincular a una sección de una página de plantilla (como Plantilla:Portal#Ejemplo ), los identificadores de fragmentos no tienen significado en una llamada de plantilla y se ignoran. Por ejemplo, es lo mismo que .{{Portal#Location|Books}}
{{Portal|Books}}
El espacio de nombres de la plantilla es el predeterminado, por lo que puede omitir el espacio de nombres Template:
en el nombre de la plantilla, y es convencional hacerlo. Sin embargo, debe especificar el prefijo del espacio de nombres para las plantillas en otros espacios de nombres, como User:
. Para transcluir una página en el espacio principal , preceda su título con dos puntos, como .{{:Page name}}
Nota: Al intentar transcluir una plantilla que no existe, se genera un vínculo rojo , como vincular a cualquier otra página inexistente. Seguir el enlace permite crear esa plantilla en particular. No es posible transcluir páginas entre proyectos (como Wikipedias o MediaWiki en diferentes idiomas); para usar una plantilla en un proyecto de otro idioma, se debe crear una copia de la plantilla en ese proyecto.
La sintaxis de transclusión básica proporcionada anteriormente se puede ampliar con parámetros , que se utilizan para controlar la salida de la plantilla. La sintaxis para esto es
donde está el nombre de la plantilla, y cada una puede contener solo un valor (estos se llaman parámetros sin nombre ) o tener la forma ( parámetros con nombre ). El primer, segundo, tercer, etc. parámetros sin nombre reciben los nombres , , , etc.{{Template name|parameter|parameter|...}}
Template name
parameter
name=value
1
2
3
Los caracteres de espacio en blanco (espacios, tabulaciones, retornos) se eliminan del principio y del final de los nombres y valores de los parámetros, pero no del medio: por lo tanto, {{ ... | myparam = this is a test }}
tiene el mismo efecto que {{ ... |myparam=this is a test}}
. Esto no se aplica a los parámetros sin nombre , donde se conservan todos los espacios en blanco.
Los parámetros (si los hay) pueden o deben pasarse a una plantilla y cómo deben denominarse se definen en la codificación de esa plantilla. Una llamada de plantilla puede especificar parámetros con nombre en cualquier orden. Se ignoran los parámetros superfluos o con nombres incorrectos; A los parámetros no especificados se les asignan valores predeterminados. Si un parámetro se especifica más de una vez, el último valor entra en vigor.
El valor de un parámetro puede ser la cadena vacía, como cuando la barra vertical o el signo igual es seguido inmediatamente por la siguiente barra vertical o las llaves de cierre. Esto es diferente de no especificar ningún parámetro, lo que da como resultado un valor predeterminado, aunque las plantillas a menudo están codificadas para comportarse igual en ambos casos.
Si una llamada de plantilla especifica un parámetro que no está definido en la plantilla, no tiene ningún efecto. A veces los editores hacen esto a propósito: por ejemplo, |reason=
se usa frecuentemente como pseudoparámetro para explicar brevemente en la fuente wiki por qué se colocó allí la llamada de plantilla. [b] Algunas plantillas usan {{ #invoke:verificar parámetros desconocidos |verificar|...}} para advertir al editor si se está utilizando un parámetro que no se tiene en cuenta en el código de la plantilla; esto se usa principalmente para cuadros de información y otras plantillas con una gran cantidad de parámetros complicados, donde la presencia de uno desconocido suele ser un error involuntario. Si actualiza dicha plantilla para definir un nuevo parámetro, su llamada al módulo también debe actualizarse para incluir el nuevo parámetro.
La sintaxis de Wikitext no permite crear de forma nativa plantillas verdaderamente variadas , sino solo pseudovariádicas, que verifican los parámetros entrantes uno por uno hasta una cierta cantidad fija. Sin embargo, es posible superar esta limitación utilizando módulos dedicados. Para casos simples, {{ #invoke:entradas separadas |main}} permite expandir todos los parámetros secuenciales de forma ciega y tiene la capacidad de establecer delimitadores personalizados. Para casos más complejos, {{ #invoke:params }} permite contar, enumerar, mapear, filtrar y propagar todos los parámetros entrantes sin saber su número de antemano.
Nota: Si desea experimentar con cualquiera de estos, puede utilizar la plantilla sandbox o su página de usuario o sandbox. Puedes probar tu plantilla con Special:ExpandTemplates .
Se puede encontrar un ejemplo de una plantilla muy simple en Plantilla:TM , que se expande a wikitexto que coloca el símbolo de marca registrada (™), vinculado al artículo de marca registrada , en ese punto de la página mostrada. Un programador diría que la plantilla "devuelve" el wikitexto del enlace del símbolo de marca registrada.
Muestre la plantilla:TM (haciendo clic en el enlace anterior), luego haga clic en la pestaña "Editar" para ver el código de la plantilla (la fuente de su página). La parte activa de ese código, que se convierte en la expansión de la plantilla cuando se transcluye, es el wikitexto de enlace único [[Trademark|™]]
. El resto de la fuente de la página está encerrada entre <noinclude>
etiquetas, por lo que aparece cuando muestra la página de la plantilla, pero no cuando muestra una página que llama a la plantilla.
Para transcluir Plantilla:TM a otra página (es decir, usarla en otra página), escriba el origen de esa página (la página de destino) y haga clic en . La página se mostrará con la llamada de plantilla reemplazada por la expansión de la plantilla, como si el wikitexto realmente estuviera contenido en ese punto. Por lo tanto, la página mostrada contendrá el enlace wiki " ™ ".{{TM}}
Show preview[[Trademark|™]]
Por ejemplo, escriba y verá "El símbolo de marca registrada es ™ " al obtener una vista previa de la página o después de guardar el cambio.The trademark symbol is {{TM}}
La otra forma de utilizar una plantilla es sustituirla . Si escribe y obtiene una vista previa o guarda la página, verá "El símbolo de marca registrada es ™ ", tal como en el ejemplo de transclusión anterior. Pero si guarda la página y luego mira nuevamente la fuente de la página guardada , [c] verá , porque la llamada de plantilla fue reemplazada por la expansión de la plantilla cuando guardó la página. No hay ninguna conexión continua con la llamada de plantilla; nadie puede saber al mirar la fuente de la página que no acaba de escribir y si la plantilla {{ TM }} cambia (o deja de existir), su página seguirá mostrándose como ahora. (Por el contrario, en el ejemplo de transclusión anterior, si la plantilla {{ TM }} cambia posteriormente, su página puede mostrarse de manera diferente).The trademark symbol is {{subst:TM}}
The trademark symbol is [[Trademark|™]]
The trademark symbol is [[Trademark|™]]
Un ejemplo de plantilla que toma parámetros es la plantilla . Intente escribir en la zona de pruebas; producirá el siguiente texto:{{about}}
{{about|how to use templates|how to use modules|Help:Lua}}
La plantilla utiliza tres parámetros sin nombre (también llamados parámetros posicionales) en el ejemplo anterior, pero puede llamar a la misma plantilla con diferentes números de parámetros para obtener resultados ligeramente diferentes, como se explica en la documentación de la plantilla . Por ejemplo, . Tenga en cuenta el uso de un parámetro vacío; en este caso, las barras verticales significan que el primer parámetro especificado es una cadena vacía, lo que en esta plantilla hará que se omita la oración inicial "acerca de". Esto produce:{{about}}
{{about||how to use modules|Help:Lua}}
Un ejemplo simple de una plantilla que tiene parámetros con nombre es Plantilla:Matriz de pagos , que se utiliza para generar una cuadrícula de 2 por 2. Por ejemplo:
Consulte la página de la plantilla para conocer más posibilidades. Observe que la plantilla se llama aquí sin especificar todos sus parámetros posibles, por lo que los parámetros no definidos reciben valores predeterminados.
Es posible que valga la pena tener en cuenta los siguientes puntos al utilizar plantillas:
{{=}}
a=b
valor literal para el primer parámetro, escriba {{done|a{{=}}b}}
o {{done|1=a=b}}
.|
en una especificación de parámetro de plantilla, ya que se interpretaría como una separación de una especificación de parámetro de otra. [e] Este problema se puede resolver de manera similar usando la palabra mágica en lugar de la tubería o, si la tubería no está diseñada para ser analizada en un nivel superior, usando la entidad HTML . Alternativamente, para incrustar wikitables en plantillas, puede utilizar para evitar el uso excesivo de .{{!}}
|
{{Wikitable}}
{{!}}
{{Trim}}
la página de origen, eso, por supuesto, llamará a la plantilla, por lo que para que sea más fácil mostrar el nombre entre llaves y también hacer que el nombre sea un enlace a la plantilla para comodidad del lector, existe el {{ tl }} plantilla (la plantilla " t emplate l ink"). Por ejemplo, {{tl|Example}}
produce {{ Ejemplo }} . Hay varias otras plantillas de vinculación de plantillas disponibles con otras funciones.<noinclude><nowiki></noinclude>~~~~~<noinclude></nowiki></noinclude>
, pero esto solo funciona cuando sustituye la plantilla. Si lo transcluyes , obtendrás ~~~~~.<!--
de cada carácter de nueva línea , lo que produce un comentario HTML .-->
Las plantillas son solo páginas de Wikipedia. Se crean, eliminan y editan de forma muy parecida a cualquier otra página.
Para crear una plantilla, elija un nombre apropiado, navegue hasta esa página, luego haga clic en la pestaña "Editar" o cree una nueva página según sea necesario.
Las plantillas normalmente se colocan en el espacio de nombres de la plantilla , aunque puede colocar una plantilla destinada a su uso personal o para experimentación en su propio espacio de usuario .
Antes de crear una plantilla, realice una búsqueda rápida de las plantillas existentes (por ejemplo, explorando Categoría:Plantillas de Wikipedia ) para ver si ya existe una plantilla que haga lo que desea o una plantilla similar cuyo código pueda copiarse y modificarse (o dejarse en lugar y ampliado). Busque plantillas genéricas en las que se pueda basar la nueva plantilla; por ejemplo, puede crear una plantilla de navbox fácilmente creando una plantilla breve que llame a la plantilla genérica:Navbox .
No existe una regla estricta sobre qué nombre elegir para una plantilla; hágalo breve pero razonablemente descriptivo. Si existen plantillas similares, intente seguir un patrón de nomenclatura coherente. Puede cambiar el nombre de una plantilla sin romper las transclusiones existentes (lo que se llama rotura ) dejando una redirección al nuevo nombre de la plantilla.
Edite una plantilla de la misma manera que cualquier otra página: navegue hasta la plantilla y haga clic en la pestaña "Editar".
Tenga mucho cuidado al editar plantillas existentes: los cambios realizados pueden afectar a una gran cantidad de páginas, a menudo de formas inesperadas. Por este motivo, muchas plantillas de uso frecuente están protegidas contra la edición, excepto por parte de administradores y editores de plantillas ; otros editores pueden proponer cambios en la página de discusión. Algunas plantillas ofrecen una zona de pruebas y casos de prueba para experimentar.
Se deben eliminar las plantillas no utilizadas o inapropiadas. Se deben fusionar las plantillas que se pueden combinar fácilmente con otras.
Para proponer la eliminación o fusión de una plantilla, vaya a Plantillas para discusión (TfD).
Todo lo que se pueda incluir en una página o artículo normal se puede incluir en una plantilla, incluidas otras plantillas (llamadas subplantillas ). Las plantillas a menudo utilizan funciones de programación (parámetros, funciones de analizador y otras palabras mágicas ) que permiten que el contenido transcluido varíe según el contexto. También hay etiquetas especiales para controlar qué información se transcluye y cuál no.
En el código de plantilla, el valor de un parámetro está representado por elementos encerrados entre llaves triples , que es una referencia de parámetro .
{{{xxx}}}
se expande al valor del parámetro denominado "xxx".{{{1}}}
, {{{2}}}
y así sucesivamente se expanden al primer, segundo, y así sucesivamente parámetros sin nombre. (Tenga en cuenta que, alternativamente, un parámetro sin nombre se puede especificar en una llamada de plantilla como un parámetro con nombre equivalente denominado "1", "2", etc.).Si no se especifica un parámetro en la llamada de plantilla, entonces la referencia del parámetro no se reemplaza con nada: se expande literalmente; esto significa que si la llamada a la plantilla no especifica el parámetro "xxx", el wikitexto {{{xxx}}}
dentro de la plantilla se expande literalmente a {{{xxx}}} (no a la cadena nula que esperabas). Puede obtener un comportamiento más útil especificando un valor predeterminado en la referencia del parámetro. Haga esto con la sintaxis de canalización : {{{xxx|dflt}}}
especifica el valor predeterminado dflt
para el parámetro con nombre "xxx" y {{{1|dflt}}}
especifica el valor predeterminado dflt
para el primer parámetro sin nombre. La mayoría de las veces, se especifica un valor predeterminado nulo, como {{{1|}}}
o {{{xxx|}}}
.
Puede utilizar valores de parámetros predeterminados para aplicar un alias de parámetro: por ejemplo, si los parámetros "texto" y "mensaje" son nombres para el mismo parámetro, que también se puede especificar como el único parámetro sin nombre, haga referencia al parámetro con {{{message|{{{text|{{{1|}}}}}}}}}
. Si la llamada de plantilla especifica más de uno de esos parámetros, "mensaje" tendrá prioridad, seguido de "texto" y finalmente del primer parámetro sin nombre. Entonces, si una llamada de plantilla especifica parámetros |message=A|text=B|C
, el wikitexto anterior se expande a A
.
Debido a los múltiples significados de la sintaxis de doble y triple llave en el wikitexto, las expresiones a veces pueden ser ambiguas. Puede resultar útil o necesario incluir espacios para resolver dicha ambigüedad. Por ejemplo, {{ {{{xxx}}} }}
o {{{ {{xxx}} }}}
, en lugar de escribir cinco llaves consecutivas, puede ser más legible para los humanos. Pero tenga cuidado con los espacios en blanco no deseados que aparecen en la expansión de la plantilla.
Las referencias a parámetros no se expanden cuando están envueltas en etiquetas.<nowiki>
El ejemplo de uso de parámetros anterior se refiere a la plantilla {{ matriz de pagos }} . Aquí está el código de la plantilla que implementa esos parámetros:
{| id = "Matriz de pagos" estilo = "fondo:blanco; flotador: {{{ Flotador | derecha }}} ; claro:derecha; text-align:center;" alinear = {{{ Flotador | derecha }}} espacio entre celdas = 0 relleno de celdas = 8 ancho = {{{ Ancho | 225 }}} |- | estilo = "ancho: 33%; " | | estilo = "ancho: 33%; borde inferior: negro sólido 1px;" | {{{ 2 litros | Izquierda }}} | estilo = "ancho: 33%; borde inferior: negro sólido 1px;" | {{{ 2R | Derecha }}} |- | estilo = "borde-derecha: negro sólido 1px; alineación de texto: derecha; " | {{{ 1U | Arriba }}} | style="border-right: negro sólido 1px; border-bottom: negro sólido 1px; fondo: {{{ ULc | blanco }}} ; tamaño de fuente:120%; "| {{{ UL | 0, 0 }}} | style="border-right: negro sólido 1px; border-bottom: negro sólido 1px; fondo: {{{ URc | blanco }}} ; tamaño de fuente:120%; "| {{{ UR | 0, 0 }}} |- | estilo = "borde-derecha: negro sólido 1px; alineación de texto: derecha; " | {{{ 1D | Abajo }}} | style="border-right: negro sólido 1px; border-bottom: negro sólido 1px; fondo: {{{ DLc | blanco }}} ; tamaño de fuente:120%; "| {{{ DL | 0, 0 }}} | style="border-right: negro sólido 1px; border-bottom: negro sólido 1px; fondo: {{{ DRc | blanco }}} ; tamaño de fuente:120%; "| {{{ RD | 0, 0 }}} |- | estilo = "tamaño de fuente:90%;" colspan = 3 | '' {{{ Nombre |{{ NOMBRE DE PÁGINA }}}}} '' |}
La entidad indica a la plantilla que utilice el valor del parámetro nombrado o el texto si el parámetro no se especifica en la llamada.{{{2L|Left}}}
2L
Left
Las referencias a parámetros no se expanden dentro de las etiquetas de apertura de estilo XML . Por lo tanto, lo siguiente no funcionará dentro de una plantilla:
porque el parámetro no está expandido. En su lugar, puede utilizar la {{#tag:}}
función de analizador , que se utiliza, por ejemplo, para generar el elemento; consulte también Ayuda: Palabras mágicas § Formato . Por lo tanto, el siguiente ejemplo funcionará:{{sfn}}
<ref>...</ref>
Si el valor de un parámetro es (o termina con) una URL , verifique si se muestra en Wikipedia con el enlace extendido en uno o más caracteres después de la URL, de modo que al hacer clic en el enlace se produzca un error o una falla. Esto podría suceder porque el código fuente no tiene un espacio después de la URL o contiene o genera un espacio que se descarta en el procesamiento. Asegúrese de que en la expansión de la plantilla haya un espacio suave ( no un espacio duro o que no se rompa ) después de la URL, independientemente de si usted o un usuario proporcionó la URL o si fue generada mediante un procesamiento automatizado. La plantilla puede resultar útil.{{spaces}}
El código de la plantilla a menudo hace uso de las variables y funciones del analizador descritas en Ayuda: Palabras mágicas para hacer que el comportamiento de la plantilla dependa del entorno en el que se incluye (como la hora actual o el espacio de nombres). Las funciones del analizador se pueden utilizar para algunos cálculos aritméticos y manipulaciones de cadenas en variables y valores de parámetros, pero ciertas funciones de programación estándar, como bucles y asignación de variables, no están disponibles. Manipulación completa de cadenas no disponible; Se han creado algunas plantillas que proporcionan dicha función, pero son ineficientes e imperfectas.
Algunas de las variables y funciones más utilizadas se enumeran a continuación. Para obtener más información, consulte Ayuda: Palabras mágicas y la documentación más completa en las páginas de MediaWiki mw: Ayuda: Palabras mágicas y mw: Ayuda: Extensión: ParserFunctions.
La extensión ParserFunctions proporciona más funciones de analizador orientadas a la programación:
Las variables y son particularmente útiles y se utilizan con frecuencia para cambiar el comportamiento de la plantilla según el contexto en el que se incluyen. Las plantillas que contienen enlaces de categorías suelen hacer esto. Por ejemplo, una plantilla de limpieza contiene un enlace de categoría para categorizar la página de llamada como una que necesita limpieza, por lo que es probable que la plantilla condicione ese enlace de categoría en la variable para que las páginas de discusión, las páginas de usuario y cualquier otra página que pueda llamar a la Por cierto, la plantilla no se clasifica como páginas que necesitan limpieza.{{PAGENAME}}
{{NAMESPACE}}
{{NAMESPACE}}
Una plantilla puede llamar a otra plantilla; esto se denomina anidamiento y la plantilla llamada se denomina, en este contexto, subplantilla . Cuando WikiMedia expande la plantilla, expande las subplantillas a medida que aparecen las llamadas a ellas, de modo que el producto final es esencialmente el resultado de expandir las plantillas desde las más profundamente anidadas.
Si bien su aplicación es bastante sencilla, implica algunas peculiaridades y trucos notables.
Para pasar un valor de parámetro desde una llamada de plantilla a una subplantilla, utilice una referencia de parámetro en la llamada de plantilla a la subplantilla.
"the quick brown {{B|{{{3}}} }} jumps over..."
'''{{{1}}}'''
{{A|apple|pear|fox}}
"the quick brown '''fox''' jumps over..."
Una plantilla puede incluso elegir qué parámetro de subplantilla pasar condicionalmente.
the quick brown {{B|{{{3}}}=fox}} jumps over...
'''{{{jumper}}}'''
{{A|apple|pear|jumper}}
"the quick brown '''fox''' jumps over..."
La recursión de plantillas no está disponible; es decir, una plantilla no puede llamarse a sí misma directamente ni indirectamente llamando a otras plantillas que la llaman. Si intenta hacerlo, aparecerá un mensaje de error que describe un "bucle de plantilla".
Cuando una subplantilla contiene llaves no coincidentes, como en {{lb}}}
"las llaves no coincidentes se tratan como texto durante el procesamiento", no afectan el análisis de las llaves en la plantilla de llamada. Pero cuando se sustituye la plantilla, las llaves que no coinciden se analizarán como llaves cuando se muestre la página posteriormente. Esto tiene poca utilidad práctica, pero ocasionalmente puede introducir errores inesperados.
Consulte m:Ayuda:Plantillas avanzadas y m:Ayuda:Conversión recursiva de wikitexto para obtener más información.
De forma predeterminada, cuando una página llama a una plantilla, MediaWiki incluye la expansión de toda la plantilla en la página de llamada. Sin embargo, es posible modificar ese comportamiento utilizando etiquetas que especifican qué partes del código de la plantilla se incluirán. Esto hace posible que la plantilla contenga información solo para mostrar cuando se muestra la página de la plantilla, como la documentación o las categorías de la plantilla . También es posible incluir partes de la plantilla en las páginas de llamada, pero que no se muestren cuando se muestra la página de plantilla en sí y que no se procesen cuando se guarda la página de plantilla en sí (por ejemplo, categorías que se aplicarán a las páginas de llamada que no no se aplica a la plantilla). Las etiquetas son las siguientes:
<noinclude>...</noinclude>
– El texto entre las etiquetas no se incluye cuando se llama a la plantilla, pero se procesa cuando la plantilla se muestra o guarda; un uso común es para documentación en plantillas .<onlyinclude>...</onlyinclude>
– No se incluye nada en la página excepto lo que aparece entre las etiquetas cuando se llama a la plantilla.<includeonly>...</includeonly>
– El texto entre las etiquetas se incluye cuando se llama a la plantilla, pero no se procesa cuando la plantilla se muestra o guarda.Quizás el problema más común con el uso de estos bloques sean los espacios o líneas no deseados. Es importante recordar que el efecto de estas etiquetas comienza inmediatamente antes del primer corchete angular, no en la línea anterior ni en el carácter visible anterior; de manera similar, el efecto termina inmediatamente después del último corchete angular, no en la siguiente línea ni con el siguiente carácter visible. Por ejemplo:
Estas etiquetas se pueden anidar una dentro de otra, aunque (para una página determinada) esto es realmente significativo sólo para la <onlyinclude>
etiqueta; anidar <includeonly>
y <noinclude>
etiquetar es bastante inútil. Sin embargo, tenga cuidado de anidar correctamente las etiquetas. Construcciones como <onlyinclude>
abc <includeonly>
def </onlyinclude>
ghi no</includeonly>
funcionarán como se esperaba. Utilice la regla "primero abierto, último cerrado" que es estándar para HTML/XML.
subst:
para sustituir una plantilla (en lugar de transcluirla), lo que puede mostrar más claramente lo que sucede cuando se transcluye la plantilla; consulte Ayuda:Sustitución .msgnw:
(abreviatura de " m e s sa g e, now iki ") para transcluir más o menos la fuente de la plantilla en lugar de su expansión. No es perfecto: se representan listas, se eliminan comentarios y las nuevas líneas individuales se reemplazan con espacios (lo cual es particularmente confuso cuando se transcluyen tablas de wikitexto).:
: , ;
, *
, #
[g] , se procesa durante la visualización como si estuviera al principio de una línea, incluso si la llamada de plantilla no lo es. Esto le permite crear varios tipos de listas con plantillas donde la llamada de plantilla puede no estar en el lugar correcto para una lista. Para evitar esto, use antes del marcado o alrededor de él, o use las entidades HTML , , , o use las plantillas {{ dos puntos }} , {{ ; }} , {{ asterisco }} , {{ signo de número }} (es posible que esas plantillas no existan en otros wikis). En algunos casos, las entidades HTML funcionarán cuando no. El problema suele ocurrir cuando el valor de un parámetro en una llamada de plantilla comienza con uno de los cuatro caracteres. Véase también {{ Encodefirst }} .<nowiki />
<nowiki>...</nowiki>
:
;
*
#
<nowiki />
{{Trim}}
NewPP limit report
comentarios.=
wikimarkup para crear un encabezado de sección en una plantilla destinada a ser utilizada en el espacio del artículo; esto creará un enlace de edición en una página que transcluye la plantilla y abrirá de manera confusa la plantilla para editarla.<includeonly>__NOEDITSECTION__</includeonly>
.La documentación para los usuarios, junto con las categorías de la plantilla, normalmente va después del código de la plantilla, dentro de <noinclude>...</noinclude>
las etiquetas. Normalmente es necesario colocar la <noinclude>
etiqueta de apertura inmediatamente después del final del código, sin espacios intermedios ni nuevas líneas, para evitar la transclusión de espacios en blanco no deseados.
En el caso de plantillas complejas, la documentación suele guardarse en una subpágina separada de la página de la plantilla (llamada "Plantilla: XXX /doc"). Esto se aplica especialmente a muchas plantillas protegidas , de modo que quienes no son administradores pueden editar la documentación. Para hacer esto, realice una llamada a la plantilla después del código de la plantilla principal y dentro de las etiquetas. Si la subpágina "/doc" no existe, aparece un enlace cuando muestra la plantilla que puede utilizar para crear la subpágina.{{Documentation}}
<noinclude>...</noinclude>
Normalmente, la subpágina de documentación, en lugar de la plantilla en sí, es lo que se coloca en las categorías para representar una plantilla.
Algunas plantillas generan declaraciones de categorías en su expansión, ya que la plantilla está destinada a colocar páginas de llamada en categorías particulares. Esto se hace a menudo con categorías de mantenimiento. Se desaconseja colocar artículos en categorías de contenido ordinarias de esta manera. Al hacer esto, es posible que tengas que usar <includeonly>...</includeonly>
etiquetas para mantener la plantilla fuera de la categoría. Mientras desarrolla, prueba, prueba, prueba o demuestra una plantilla destinada a aplicar una categoría, reemplace temporalmente cada categoría con una categoría de prueba (comenzando con X1 , X2 o X3 ) o suprima la categorización (consulte la supresión de categorías en plantillas ).
Categorizar su plantilla y documentar su uso adecuado hará que sea más fácil para otros editores encontrarla y usarla.
Las declaraciones de categoría para una plantilla en sí deben colocarse en la subpágina de documentación de la plantilla (o dentro de <noinclude>...</noinclude>
las etiquetas si no hay una subpágina de documentación) para evitar colocar páginas de llamada en la categoría.
Una redirección de una plantilla funciona como un alias. Por ejemplo, Plantilla:Tsh redirige a Plantilla:Atajo de plantilla , por lo que puedes codificar en lugar de .{{tsh|foo}}
{{Template shortcut|foo}}
Es bueno preparar alias de plantilla para variaciones en los espacios en blanco y las mayúsculas. Por ejemplo, hay una plantilla llamada . La "W" está en mayúscula, ya que la palabra "Wikcionario" lo está, pero existe una redirección (con "w" minúscula) porque los editores pueden recordarla erróneamente como esta última.{{See Wiktionary}}
{{See wiktionary}}
Límite de "tamaño de inclusión posterior a la expansión". Cuando las plantillas se procesan o expanden a HTML para verlas en su navegador, utilizan memoria. Esto se denomina "tamaño de inclusión posterior a la expansión" y tiene un límite de 2.048.000 bytes. Este tamaño se incluye como un comentario invisible en la salida HTML; utilice la función de visualización del código fuente de su navegador para mostrar el HTML sin formato y busque "newpp". El informe se verá así:
<!-- Informe de límite de NewPP Recuento de nodos de preprocesador: 2382/1000000 Tamaño de inclusión posterior a la expansión: 63476/2048000 bytes Tamaño de argumento de plantilla: 9517/2048000 bytes Recuento de funciones de analizador costosas: 2/500 -->
El ejemplo muestra que la expansión de la plantilla utiliza 63.476 bytes de los 2.048.000 bytes de memoria disponible.
Problema de visualización. Si se incluyen demasiadas plantillas en una página, el tamaño de inclusión posterior a la expansión puede exceder el límite. Cuando esto sucede, las plantillas después del límite ya no se expandirán y, en su lugar, se mostrarán como un enlace wiki (por ejemplo, Plantilla: Nombre de la plantilla ). Las causas comunes son la inclusión de demasiadas plantillas de citas , plantillas de cuadro de navegación y/o plantillas de banderas . Para resolver este problema , sustituya las plantillas, invoque módulos directamente , elimine plantillas o divida la página.
Las transclusiones no renderizadas todavía cuentan para el límite. Por ejemplo, una página que contiene solo {{#if:{{:Main Page}}}}
todavía tendría un tamaño de inclusión posterior a la expansión aunque no tuviera ningún resultado.
Lo mismo se aplica a los módulos de Scibunto . Por ejemplo, {{#invoke:Test|main}}
seguiría aumentando el tamaño de inclusión posterior a la expansión incluso si Módulo:Prueba fuera simplemente:
mw . getCurrentFrame (): preproceso "{{msgnw::Main Page}}" -- elimina esta línea y el tamaño de inclusión posterior a la expansión se vuelve cero return { main = function () end } -- p.main() no tiene valor de retorno
El lenguaje de programación Lua está disponible para su uso a través de la extensión Scribunto MediaWiki. Puede incrustar código Lua en plantillas empleando la {{#invoke:}}
funcionalidad de la extensión Scribunto MediaWiki. El código fuente de Lua se almacena en páginas llamadas módulos y las plantillas invocan estos módulos individuales. Por ejemplo, puede invocar el Módulo:Ejemplo con el código {{#invoke:Example|hello}}
para imprimir el texto "¡Hola mundo!".
Una plantilla es una página de Wikipedia cuyo propósito es ser transcluida o sustituida en otra página. Las plantillas suelen estar en el espacio de nombres de la plantilla , pero no es necesario. Las páginas pueden transcluir o sustituir cualquier página, no solo plantillas; Lo que hace que una página sea una plantilla es el propósito de la página.
Llamar a una plantilla significa transcluir o sustituir una. Una página llama a una plantilla. El wikitexto en una página que hace que la página llame a una plantilla se llama llamada de plantilla . Por ejemplo, . Las llamadas a plantillas siempre están delimitadas por llaves dobles ( ), pero no todo lo que está encerrado entre llaves dobles es una llamada a plantilla.{{sic|constellation prize}}
{{}}
La expansión es el proceso de generar una fuente de página a partir de una plantilla, cuando una página la llama, aplicando parámetros y otras características. MediaWiki expande una plantilla a medida que representa una página. También se puede decir que la plantilla en sí se expande, por lo que tanto "MediaWiki se expande {{{1}}}
como el valor del primer parámetro posicional" como " {{{1}}}
se expande como el valor del primer parámetro posicional" funcionan.
La expansión de una página es también la fuente de la página que resulta de la expansión de la plantilla. Por ejemplo, la expansión de la plantilla {{ sic }} cuando la llama es .{{sic|constellation prize}}
constellation prize [''[[sic]]'']
El contenido de la página mostrado generado por una llamada de plantilla (que es la representación de la expansión de la plantilla llamada) es el resultado de la plantilla . El resultado de la plantilla generado por la llamada de la plantilla es "premio de constelación [ sic ]".{{sic|constellation prize}}
El nombre de una plantilla es el nombre de la página de Wikipedia (que también es el título de la página). El espacio de nombres normalmente se omite si es "Plantilla" (que casi siempre es). Además, se acostumbra escribir el nombre entre llaves dobles, como una llamada de plantilla, para enfatizar que nombra una plantilla. Por ejemplo, "Utilice la plantilla {{ tm }} para generar el símbolo de marca registrada". Pero no vaya tan lejos como para poner un nombre de plantilla en la fuente del código, para evitar confusión con una llamada de plantilla real. {{tm}} es un nombre de plantilla, pero {{tm}}
es una llamada de plantilla.
Algunas llamadas a plantillas realizan una función de etiquetado; Esta llamada de plantilla a menudo se denomina etiqueta , como en "Si estás en medio de una edición importante, coloca una etiqueta {{ in use }} en la parte superior de la página". Esta es una de las muchas formas en que se utiliza el término "etiqueta" en Wikipedia.
Un parámetro es una pieza particular de información que se puede especificar en una llamada de plantilla para afectar la expansión de la plantilla. Un parámetro tiene un valor . Un parámetro con nombre tiene un nombre ; un parámetro sin nombre tiene una posición . Una llamada de plantilla especifica un parámetro y el código que lo hace es una especificación de parámetro . Una plantilla define un parámetro (no explícitamente, simplemente porque la plantilla está diseñada para usarlo). El código de una plantilla que se expande hasta el valor del parámetro (p. ej. {{{myparam}}}
) es una referencia de parámetro .
Es común utilizar "plantilla" para referirse no sólo a una plantilla, sino también a una llamada de plantilla, un resultado de plantilla y un nombre de plantilla.
Por ejemplo:
Estos usos pueden resultar confusos, especialmente para alguien menos familiarizado con las plantillas. Considere utilizar un lenguaje más específico.
Como alternativa al uso de este índice vinculado anteriormente, puede buscar en el espacio de nombres de la plantilla usando el cuadro Especial:Buscar a continuación:
$wgNonincludableNamespaces
.{{Requested move}}
|reason=