Plantillas de listado

Prontus te permite crear portadas para agrupar artículos de distintas taxonomías. Puedes por ejemplo usar una plantilla para mostrar artículos de dos secciones taxonómicas distintas, como "Comercio" e "Industria".

Publicado: Viernes 28 de septiembre de 2018 por Equipo de desarrollo AltaVoz
Última modificación: Jueves 11 de agosto de 2022

Estructura

Las plantillas de listado son parecidas a las plantillas de portadas taxonómicas. Las principales diferencias estriban en que puedes especificar muchos más filtros -y filtros mucho más flexibles- para los listados que para las portadas taxonómicas, y que los listados no se paginan, sino que tienen un número limitado de ítems que se muestran siempre.

Por ejemplo, una portada taxonómica puede mostrar solamente una sección / tema / subtema en particular, mientras que un listado permite especificar un número de secciones o temas o subtemas.

Este ejemplo de plantilla describe cómo implementar un listado que se muestran como máximo 10 artículos de tipo general pertenecientes a las secciones 2 ó 3.

<!-- CONFIG LIST_FIDS = fid_general -->
<!-- CONFIG LIST_MAXARTICS = 10 -->
<!-- CONFIG LIST_SECCION =  2,3 -->
%%loop%% <article> %%if(fotofija_port_136x76)%% <a href="%%_fileurl%%" target="_top"><img src="%%fotofija_port_136x76%%" width="125" height="70" alt="%%_titular.xml%%" title="%%_titular.xml%%"></a> %%/if%% %%nif(fotofija_port_136x76)%% <a href="%%_fileurl%%"><img src="/%%_prontus_id%%/imag/default/imagen_audio_125x70.jpg" width="125" height="70" alt="%%_titular.xml%%" title="%%_titular.xml%%"></a> %%/nif%% <small>%%_nom_seccion1%%<span class="fecha-dinamica"><span class="fecha">%%_fechap%%</span><span class="hora >%%_horap%%</span></span></small> <h3><a href="%%_fileurl%%" target="_top">%%_titular%%</a></h3> </article> %%/loop%%

La ubicación de las plantillas es /[nombre del prontus]/plantillas/list/port/ , con eventuales macros en /[nombre del prontus]/plantillas/list/macros/ . Prontus procesará esas plantillas generando los resultados en /[nombre del prontus]/site/list/port/.

Para definir el número de artículos a desplegar por portada de lista en general, se puede modificar el valor directamente en la pestaña Listados del panel de Administración, o editar el archivo de configuración /[nombre del prontus]/cpan/[nombre del prontus]-list.cfg, y definir este valor en el parámetro LIST_MAXARTICS, o agregarlo directamente dentro de la plantilla como se ve en el ejemplo arriba. Otras variables de configuración pueden verse en el artículo correspondiente.

Las opciones disponibles para configurar el contenido de un listado en la plantilla son éstas:

<!-- CONFIG LIST_FIDS = fid_general (listado separado por comas) -->
<!-- CONFIG LIST_MAXARTICS = 10 -->
<!-- CONFIG LIST_SECCION = 2,3 (listado de ids separado por comas) -->
<!-- CONFIG LIST_TEMA = 4,5 (listado de ids separado por comas) -->
<!-- CONFIG LIST_SUBTEMA = 6,7 (listado de ids separado por comas) -->
<!-- CONFIG LIST_ORDEN = PUBLICACION(DESC) [ PUBLICACION, TITULAR o CREACION, DESC o ASC] -->

Múltiples loops

Sse pueden usar múltiples LOOP dentro de las plantillas de lista, procesando múltiples veces cada artículo. Esto permite por ejemplo hacer listas de titulares separando algunos por criterios definibles:

<h1>Titulares</h1>
%%loop%%
  %%if(_loopcounter> 1)%% %%_txt_titular%% %%/if%%
%%/loop%%
<h >Esto es un separador</h2>
%%loop%%
  %%if(_loopcounter = 1)%%<p class="resaltado">%%_titular%%</p>%%/if%%
%%/loop%%

Esto resulta en el siguiente HTML:

<p>titular 2</p>
<p>titular 3</p> 
<h1>Esto es un separador</h1> 
<p class="resaltado">titular 1</p>

Exclusión de artículos

Puedes especificar una portada -y opcionalmente un área de ella- con artículos a excluir de la lista.

<!-- CONFIG LIST_EXCLUDE_PORT = inicio.xml -->
<!-- CONFIG LIST_EXCLUDE_PORT_AREA = 1 -->

La primera configuración debe ser el nombre del archivo xml de la portada a revisar. La segunda, opcional, permite especificar el área de esa portada con los artículos a excluir. Si no especificas este valor, excluirás todos los artículos que aparezcan en la portada.

La variable CONFIG_LIST_EXCLUDE_PORT_AREA permite especificar más áreas, separadas por comas:

<!-- CONFIG LIST_EXCLUDE_PORT_AREA = 1,2 -->

Regeneración de salidas

Es posible activar o desactivar la generación de salidas de artículos al guardar una portada. Esto puede hacerse ya sea editando el archivo de configuración [nombre del prontus]/cpan/[nombre del prontus]-list.cfg y agregando la variable de configuración

LIST_PORT_PPROC = 1 # 1 para activar, 0 para desactivar

o desde el panel de administración de Prontus, en la página Administrar -> Configuración -> Listados.

Multivistas

Si están habilitadas las multivistas, la estructura de directorios es un poco diferente a la de artículos y portadas normales. Si habilitaste una vista llamada "movil", deberás ubicar las plantillas de esa vista en los subdirectorios /[nombre del prontus]/plantillas/list/port/all-movil/, /[nombre del prontus]/plantillas/list/port/fid_noticia-movil/, etc., no en /[nombre del prontus]/plantillas/list/port-movil/all/ como podrías suponer.

Registro

Para que las plantillas que creas sean procesadas por Prontus, debes registrarlas en la vista de Administrar - Configuración - Listados, en el apartado "Configuración de plantillas y URLs".