|unique

El filtro |unique (a partir de SPIP 1.8, SPIP 1.8.1) devuelve el valor de la baliza a la que se aplica solamente si es la primera vez que éste es encontrado.
Se aplica, por tanto, sobre una baliza situada en el interior de un bucle.

Es posible, para diferenciar varias llamadas independientes en el interior del bucle, pasar un argumento de identificación a este filtro.
Por ejemplo: [(#ID_SECTEUR|unique{cabecera})] no tendrá incidencia sobre (no impedirá que se muestre): [(#ID_SECTEUR|unique{cuerpo})].

El filtro también acepta un segundo argumento: «1» para mostrar el número de veces que la baliza ha sido filtrada.
Por ejemplo: [(#ID_SECTEUR|unique{cuerpo, 1})] mostrará el total correspondiente al número de veces que #ID_SECTEUR ha sido filtrado por |unique{cuerpo}.
Siempre será preferible a esta notación el uso (más económico) de la baliza específica #TOTAL_UNIQUE{cuerpo} [1].

-  El filtro |unique puede ser interesante para, por ejemplo, mostrar una lista de artículos por fecha:

<BOUCLE_blog(ARTICLES) {par date} {inverse} {"<br>"}>
  [<hr><h1>(#DATE|affdate_mois_annee|unique)</h1>]
  #TITRE ...
</BOUCLE_blog>

La fecha sólo se mostrará en cada cambio de mes.

-  Otro ejemplo:

<BOUCLE_blog2(ARTICLES) {par date} {inverse}>
  [<hr><h1>(#DATE|annee|unique)</h1>]
  [<h2>(#DATE|affdate{'Y-m'}|unique|nom_mois)</h2>]
  <a href="#URL_ARTICLE">#TITRE</a><br />
</BOUCLE_blog2>

mostrará una lista parecida a:

2005
  marzo
    artículo de marzo
    otro artículo de marzo
  febrero
    artículo de febrero
2004
  diciembre
    un artículo

En este último ejemplo, se utiliza la notación affdate{'Y-m'} para visualizar el nombre de mes en cada cambio de año. En efecto:

  • Si sólo se escribiera [(#DATE|nom_mois|unique)], los nombres de meses sólo se mostrarían el primer año.
  • Si el filtro fuera [(#DATE|unique|nom_mois)], se mostrarían todas las fechas. En efecto, #DATE devuelve una fecha completa que contiene también las horas, minutos y segundos. Hay por tanto una gran probabilidad de que las fechas completas de dos artículos publicados el mismo día sean diferentes.
    Es por eso que solamente se guarda el mes y el año de la fecha antes de pasárselos al filtro unique.

Notas

[1Ver la página dedicada a la baliza #TOTAL_UNIQUE.

Autor o autora David Sánchez Crespillo Publicado el: Actualizado: 28/06/23

Traducciones: català, English, Español, français, Nederlands