La transclusión de sección etiquetada (LST) es una función del analizador que ofrece dos formas de designar una "sección" de una página para su transclusión . El primer método identifica la sección mediante el nombre de la página y un encabezado (el título de la sección tal como aparece en la página de origen). El segundo método permite la selección de una "sección" arbitraria para su transclusión, pero este enfoque requiere agregar un marcado específico para etiquetar la sección deseada de antemano.
Tres funciones pueden transcluir una sección de un nombre de página determinado.
Tenga en cuenta que también existen nombres equivalentes para estas funciones, siendo los nombres base #lst
, #lstx
, y #lsth
.
Para preparar una "sección" arbitraria para una transclusión de sección etiquetada, márquela con los atributos de inicio y fin dentro de <section />
las etiquetas que contengan su etiqueta :
<section begin=label />
y<section end=label />
En comparación con la transclusión LST, el marcado de transclusión parcial no se puede etiquetar y, por lo tanto, la página de origen no puede tener un conjunto de sus secciones transcluidas a una página y, al mismo tiempo, tener un conjunto diferente para otra página. Una página marcada solo con etiquetas de transclusión parcial siempre transcluirá lo mismo. Pero la LST y la transclusión parcial pueden funcionar juntas en la misma página.
Estas funciones LST toman parámetros adicionales, como se explica a continuación. § Las páginas de ejemplo proporcionan enlaces de búsqueda para los artículos que actualmente emplean LST para que pueda ver cómo lo utilizan.
Esta sección resume las tres funciones del analizador en la extensión de transclusión de sección etiquetada.
Sintaxis: {{ función : nombre_página_completa | sección | rango / cambio }}
No es posible pasar parámetros de plantilla a la sección o página transcluida, pero el código de la página puede usar palabras mágicas para {{PAGENAME}}
probar dónde está y comportarse de manera diferente.
<includeonly>
el contenido en la página de destino .Comportamiento de las etiquetas LST <section />
:
Opciones de transclusión LST:
Se aplica la sintaxis estándar:
Errores de uso comunes.
No es necesario marcar la página de origen si solo se utilizan títulos de sección para especificar la transclusión. Este es el caso de #section-h.
Para etiquetar una sección para la transclusión LST utilice el siguiente marcado.
Marque los límites de su sección en la página de origen utilizando dos etiquetas singulares <section />
; por ejemplo, para etiquetar una sección como "capítulo1":
<section begin=chapter1 />
Este es un capitulo<section end=chapter1 />
Tenga en cuenta que no se trata de una etiqueta de apertura y cierre HTML normal. En HTML <section>...</section>
no es válido. Esta etiqueta de analizador, <section />
, es incompatible con un elemento HTML porque el marcado de MediaWiki emplea una etiqueta de analizador única, agregada solo para la extensión de transclusión de sección etiquetada.
Utilice la función de análisis #section
para incluir la sección. Por ejemplo, para incluir la sección etiquetada como capítulo1 de una página llamada artículoX :
{{#section:ArtículoX|capítulo1}}
Para transcluir una página, pero excluir una sección específica, utilice la #section-x
función de analizador:
{{#section-x: nombre_pagina_completa | etiqueta }}
o
{{#section-x: nombre_de_pagina_completa | encabezado }}
Opcionalmente, puede agregar texto de reemplazo a la sección excluida.
{{#section-x: nombre_de_pagina_completa | etiqueta | texto de reemplazo }}
Ejemplo:
{{ #section-x : articleX | chapter1 | Ver capítulo 1 en [[ articleX ]] . }}
El texto de reemplazo aparecerá en el área donde se omite (excluye) la sección.
De forma predeterminada, #section
se incluirán todos los espacios en blanco de la sección, lo que puede generar problemas si intentas incluir la sección en un artículo diferente. Para solucionar esto, aprovecha el hecho de que la función del analizador {{#if}} recorta sus entradas, por ejemplo
{{#if:1|{{#section:ArticleX|capítulo 1}}}}
Esto eliminará los espacios en blanco iniciales y finales, y el artículo se reproducirá como se esperaba. Debido a que está anidando plantillas, duplicará el tamaño de inclusión posterior a la expansión del extracto, lo que puede presentar un problema en páginas más largas, por lo que es posible que desee editar la página de origen para envolver el contenido que desea incluir, sin el espacio en blanco, en <onlyinclude>...</onlyinclude>
las etiquetas. También puede usar la plantilla {{ trim }} en lugar de {{#if:1}}, pero debido a que es solo un contenedor para la técnica {{#if:1}} anterior, da como resultado una triplicación del tamaño de inclusión posterior a la expansión.
Es posible tener varias secciones con el mismo nombre; en este caso, se incluirán o excluirán todas las secciones con ese nombre. Esto resulta especialmente útil para marcar varias discusiones.
Estas funciones pueden transcluir la página entera, por lo que tienen dos argumentos opcionales para especificar comportamientos: 1) una sección etiquetada con un nombre o un título de encabezado, 2) un rango de dichas etiquetas de sección o títulos de sección nombrados, y 3) contenido de reemplazo para una sección nombrada.
{{#section:articleX|chapter1|chapter3}}
incluye todo desde el comienzo del capítulo 1 hasta el final del capítulo 3. Esto permite utilizar pares de marcadores vacíos para marcar un final de la sección, posiblemente en una plantilla.{{#section-h:articleX|chapter1|chapter3}}
incluye contenido del capítulo 1, encabezado y contenido del capítulo 2.{{#section-x:articleX|chapter1|chapter3}}
reemplaza el encabezado y el contenido del capítulo 1 con la palabra "capítulo 3".En lugar de transcluir cada vez, para "transcluir" una vez (copiar), utilice la sustitución :
Por ejemplo, para archivar discusiones antiguas en tu página de discusión, puedes copiarlas a una página de archivo y luego eliminarlas, todo usando LST:
<section begin=archive />
al principio de la sección que desea archivar y <section end=archive />
al final. (Usamos "archivar" como etiqueta, pero cualquier etiqueta servirá). Esta sección puede estar en cualquier lugar y puede tener varias secciones.Al utilizar la sustitución para incluir contenido en Wikipedia, utilice el resumen de edición para aplicar los derechos y obligaciones de los reutilizadores . Esto se aplica a cualquier contenido sustancial, no solo al contenido de los artículos.
Actualmente, ninguna plantilla puede facilitar este marcado LST porque es necesario usar #tag para "preSaveTransform" palabras mágicas dentro de una etiqueta de cualquier tipo. Para ver el intento correcto, consulte la sección {{ que no funciona }} .
La única forma de evaluar los argumentos de plantilla dentro de una etiqueta (debido al orden de análisis) es #tag . LST necesitaría una evaluación (de plantilla) de la etiqueta a medida que se genera la etiqueta de sección:
{{ #tag : sección | {{{ 1 }}} } }
Pero #tag solo produce etiquetas similares a XML (equilibradas, abiertas y cerradas, de inicio y fin, pares de ellas), mientras que LST usará una etiqueta singular, explícitamente autocerrada. Por lo tanto, las etiquetas LST no pueden ser generadas por ninguna plantilla. Compare la salida real (solo en vigencia):
{{#tag:section| contenido |begin= etiqueta }} → < sección begin= etiqueta > contenido </ sección>
con la salida solicitada:
<section begin= etiqueta /> contenido <section end= etiqueta />
Estas son búsquedas almacenadas en un enlace: