Ayuda:Extensiones:DPL

De GuildWiki2.es
Saltar a: navegación, buscar

La extensión DPL o DynamicPageList sirve para generar listas de páginas de forma dinámica, basadas en las categorizaciones de los artículos.

Lo que quiere decir de forma dinámica, en este contexto, es que la lista se crea con los resultados de una consulta que se realiza al software de mediawiki: por ejemplo, en vez de escribir todos los artículos uno a uno, se le pide a la wiki que nos haga una lista con todos los artículos que pertenecen a la categoría X.

La extensión es muy compleja y tiene muchísimas funcionalidades. Una lista completa de las posibilidades que ofrece y los usos se pueden consultar en la documentación original (en inglés) de la extensión:

Nota: El uso de esta plantilla está restringido a páginas protegidas, para evitar problemas de seguridad asociados al funcionamiento de la extensión. Esto quiere decir que sólo podrán hacer uso de ella los administradores de la wiki.

En este manual ofreceremos una guía breve y sencilla para realizar plantillas que construyan tablas simples a partir de una o varias categorías. Por una parte, se explicará cómo hacer listas sencillas. Por otro lado, veremos qué ofrece la extensión para construir y dar formato a una tabla que incluya una lista dinámica.

Contenido

Uso básico

La extensión DPL se puede usar dos maneras:

  • Función parser:
    {{#dpl: .... }} 
  • Etiquetas:
     <DPL> .... </DPL>  

En este manual usaremos la función parser por ser más potente y porque el uso que se le va a dar es principalmente para crear plantillas.

Creación de listas: criterios de selección

Las listas se pueden crear especificando distintos criterios que han de cumplir los artículos que queremos listar. La información completa sobre estos criterios se puede encontrar en Criteria for page selection

Aquí vamos a describir los principales que usaremos: Categorías, enlaces y plantillas que se usan.

Categorías

En el siguiente ejemplo, la lista se crearía a partir de dos categorías: cat1 y cat2. El parámetro para que la función dpl reciba las categorías es category.

{{#dpl: category = cat1{{pipe}}cat2 }}

El uso de la metaplantilla {{pipe}} es necesario para el correcto tratamiento sintáctico de la función. La lista se creará con todos aquellos artículos que estén en la categoría cat1 o en la categoría cat2.

Si lo que pretendemos es listar aquellos artículos que estén en ambas categorías el ejemplo sería:

{{#dpl: 
 | category = cat1
 | category = cat2 
}}

Para trabajar con jerarquías de categorías, existe la posibilidad de determinar niveles de búsqueda en las categorías, usando un asterisco antes de la categoría. El ejemplo buscaría articulos en la categoría cat1 y en sus subcategorías, hasta 2 niveles de profundidad.

{{#dpl: 
 | category = **cat1
}}

En vez de poner el nombre completo de la categoría con category, podemos usar categorymatch para expresar condiciones que deben cumplir los nombres de las categorías que queremos usar en la lista (sintaxis SQL)

{{#dpl: 
 | categorymatch=Habilidades%|Rasgos%
}}

Por ejemplo de esa forma haríamos una lista con todos los artículos que pertenezcan a las categorías cuyo nombre empieza por las palabras Habilidades o Rasgos.

Por último, por si fuera necesario, también disponemos de notcategory y notcategorymatch.

Enlaces

Podemos listar páginas en función de los enlaces que contiene un artículo (linksfrom) o de las páginas que enlazan a una determinada (linksto)

Este ejemplo, que además usa una palabra mágica, listaría todas las páginas que estén en la categoría y que además estén enlazadas desde la página actual, sea cual sea.

  {{#dpl: category = NombreCategoría | linksfrom = {{FULLPAGENAME}} }}

Este otro ejemplo, sin embargo, toma de la categoría, aquellos artículos que contienen enlaces a la página actual.

  {{#dpl: category = NombreCategoría | linksto = {{FULLPAGENAME}} }}

Plantillas usadas

Podemos listar páginas que usen una determinada plantilla con uses

Este ejemplo, listaría todas las páginas que estén en la categoría y que además usen alguna de las plantillas que se especifican:

  {{#dpl: 
    | category = NombreCategoría 
    | uses = Plantilla:CajaInfo{{pipe}}Plantilla:CajaNav
  }}

Formato y tablas

Para realizar tablas existe una sintaxis simplificada con table y tablerow.

En el siguiente ejemplo, se listan las páginas que usen la plantilla CajaHabilidad. La primera columna de la tabla es por defecto un enlace al nombre del artículo. Para recoger la información de las demás columnas de la tabla se usa una notación especial que se puede ver en el parámetro include.

Con table damos formato general a la tabla, y especificamos también las cabeceras de las columnas.

Con tablerow damos formato a las filas. Para ello, nos referimos al contenido recogido con el include mediante %%, y aplicamos los formatos y cambios que se deseen.

{{#dpl:
 |uses       = Plantilla:CajaHabilidad
 |include    = {CajaHabilidad}:prof, {CajaHabilidad}:tipo, {CajaHabilidad}:habilidad, {CajaHabilidad}:descripción
 |table      = class="wikitable sortable bandas" id="banda" style="border:3px solid {{colorwiki|wiki}};",Habilidad,Profesión, Tipo, Icono, Descripción
 |tablerow   = '''%%''',''%% '',[[Archivo:%%.jpg|link=|%%]], %%
}}

Parámetros

Listar artículos de una categoría:

{{#dpl:
|category=Una categoría
}}

Ejemplo de uso

{{#dpl:
|category=Ayuda
|format=,\n* [[%PAGE%]],
}}



Ejemplo de uso con tablas

{{#dpl:
|uses=Plantilla:CajaNav
|namespace= Plantilla
|include    = {CajaNav}:title
|table      = class="wikitable sortable bandas" id="banda" style="border:3px solid {{colorwiki|wiki}};",Plantillas que usan CajaNav
|tablerow   = ''%%''
}}


Plantillas que usan CajaNav Título
CajaNav '
CajaNav/doc '
CajaNav/doc {{{title}}}
CajaNav/doc Ejemplo 1
CajaNav/doc Ejemplo 1
CajaNav/doc Ejemplo 2
CajaNav/doc Ejemplo 2
CajaNav/doc Ejemplo 3
CajaNav/doc Ejemplo 3
CajaNav/doc Ejemplo 4
CajaNav/doc Ejemplo 4
CajaNav/doc '
CajaNav/doc '
CajaNav/doc '
CajaNav/doc Ejemplo 4: Caja hija 1
CajaNav/doc Ejemplo 4: Caja hija 2
CajaNav/doc Ejemplo 4: Caja hija 3
CajaNavArco del León Localizaciones de Arco del León
CajaNavArmaduraLuminiscente Armadura luminiscente
CajaNavArmadurasTipo Armaduras por tipo
CajaNavArmas Listas de armas
CajaNavArmasBase Armas
CajaNavArmasCalidad Tipos de armas según su calidad
CajaNavArmasCulturales Conjuntos de armas culturales
CajaNavAtributos Atributos
CajaNavAyuda Ayuda
CajaNavChatarras '
CajaNavChatarras '
CajaNavCiudadela Negra Localizaciones de la Ciudadela Negra
CajaNavCiudades de Tyria Ciudades de Tyria
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap '
CajaNavColap/doc CajaNav hija
CajaNavCols '
CajaNavCols/doc CajaNav hija
CajaNavConjunta CajaNavConjunta
CajaNavContinentes Continentes de Tyria
CajaNavDominios Dominios
CajaNavDragones '
CajaNavEfectos '
CajaNavEfectos '
CajaNavEfectos '
CajaNavEfectos '
CajaNavEfectos '
CajaNavEstilo Guías de estilo
CajaNavEventos Eventos especiales
CajaNavFaqs FAQ's
CajaNavFilo del destino Filo del destino
CajaNavGlosario Glosario
CajaNavHabilidades '
CajaNavHistoriaPersonal Historia Personal
CajaNavHistoriaPersonal/Asura Parte I — Día de graduación
CajaNavHistoriaPersonal/Asura Parte II — Legacy Code
CajaNavHistoriaPersonal/Asura Parte III - Algo perdido, algo ganado
CajaNavHistoriaPersonal/Charr Parte I — ¡Por la Legión!
CajaNavHistoriaPersonal/Charr Parte II — Bloodying the Past
CajaNavHistoriaPersonal/Charr Parte III — From Howl to Silence
CajaNavHistoriaPersonal/Humanos Parte I — Crimen y castigo
CajaNavHistoriaPersonal/Humanos Parte II — Reunión familiar
CajaNavHistoriaPersonal/Humanos Parte III — Storming the Castle
CajaNavHistoriaPersonal/Norn Parte I — Rising to the Challenge
CajaNavHistoriaPersonal/Norn Parte II — Things Best Left Behind
CajaNavHistoriaPersonal/Norn Parte III — Brawn over Brains
CajaNavHistoriaPersonal/Pacto Part VII — El precio de la victoria
CajaNavHistoriaPersonal/Pacto Part VIII — Savior of Tyria
CajaNavHistoriaPersonal/Prologo Prólogo
CajaNavHistoriaPersonal/Sylvari Parte I — Despertando de la pesadilla
CajaNavHistoriaPersonal/Sylvari Parte II — Época de crecimiento
CajaNavHistoriaPersonal/Sylvari Parte III — Branching Out
CajaNavHistoriaPersonal/Órdenes Parte IV — Las Órdenes de Tyria
CajaNavHistoriaPersonal/Órdenes Parte V — Manos amigas
CajaNavHistoriaPersonal/Órdenes Parte VI - La Batalla de Isla Garra
CajaNavHistoriaViviente Historia viviente
CajaNavHoelbrak Localizaciones de Hoelbrak
CajaNavIncursiones Incursiones
CajaNavKarma Objetos que proporcionan karma
CajaNavLa Arboleda Localizaciones de La Arboleda
CajaNavLa Niebla MvM La Niebla (Mundo contra Mundo)
CajaNavLa Niebla PvP Corazón de la Niebla (PvP estructurado)
CajaNavLegal Legales, licencias y copyright
CajaNavLibros Libros
CajaNavLinde de la Divinidad Localizaciones de Linde de la Divinidad
CajaNavLogros Tipos de Logros
CajaNavLrasgos Líneas de rasgos
CajaNavManual Ayuda: Manual de edición
CajaNavMascotas '
CajaNavMascotas '
CajaNavMascotas '
CajaNavMatReciclables Materiales reciclables
CajaNavMateriales Materiales de artesanía
CajaNavMateriales/Ascendidos Ascendidos
CajaNavMateriales/Cocina Cocina
CajaNavMateriales/Comunes Comunes
CajaNavMateriales/Eventos Eventos especiales
CajaNavMateriales/Excepcionales Excepcionales
CajaNavMateriales/Gemas Gemas y joyas
CajaNavMateriales/Selectos Selectos
CajaNavMawdrey Pasos para la fabricación de Mawdrey
CajaNavMazmorras Mazmorras
CajaNavMemoriasLocura Memorias de Locura
CajaNavMonedas Cartera de la cuenta
CajaNavMonedas Personaje
CajaNavMonedas Clan
CajaNavMonturas Monturas
CajaNavMundo viviente '
CajaNavMundo viviente '
CajaNavMundo viviente temporada 2 '
CajaNavMundo viviente temporada 2 '
CajaNavNormas Normas y políticas
CajaNavOficios Oficios
CajaNavProfesiones Profesiones
CajaNavRasgos Rasgos
CajaNavRata Sum Localizaciones de Rata Sum
CajaNavRazas Razas jugables
CajaNavRegiones Regiones de Tyria
CajaNavReligiones Religiones
CajaNavRunaSigilo Runa de
CajaNavRunacentauro Runa del centauro
CajaNavRunaguardián Runa del guardián
CajaNavRunaguerrero Runa del guerrero
CajaNavRunainfante Runa del infante
CajaNavRunaliche Runa del liche
CajaNavRunaluchador Runa del luchador
CajaNavRunaviajero Runa del viajero
CajaNavRunaáguila Runa del águila
CajaNavSimple '
CajaNavSimple/doc '
CajaNavSub '
CajaNavSub/doc Título ejemplo 1
CajaNavSub/doc Título ejemplo 1
CajaNavSub/doc Título ejemplo 2
CajaNavSub/doc Título ejemplo 2
CajaNavTarea Tareas
CajaNavTónicos Clásicos
CajaNavTónicos Tónicos de vestimenta inagotables
CajaNavTónicos Otros
CajaNavTónicos Tónicos de Eventos
CajaNavValle de la reina Localizaciones del Valle de la reina
CajaNavZonasExp de Tyria Zonas explorables de Tyria
CajaNavÓrdenes Órdenes
CajaNavÓrdenes militares de Kryta Órdenes militares de Kryta
MejoraCajaNav [[{{{tipo}}} {{{nombre}}}]]
MejoraCajaNav/doc '
Tipos de CajaNav Cajas de Navegación
Herramientas personales
Espacios de nombres

Variantes
Acciones
Navegación
Herramientas
Compartir
Publicidad