|alterner

O filtro |alterner{a, b, c, ...} aplicado a uma tag numérica (na maioria das vezes #COMPTEUR_BOUCLE) no interior de um loop, exibe cada um dos seus argumentos de cada vez e pela ordem, a cada mudança do valor da tag.

  • Apparu en : SPIP 1.8.2

Exemplos

Integrado a um loop, [(#COMPTEUR_BOUCLE|alterner{branco, amarelo})] exibirá «branco» na primeira iteração do loop, «amarelo» na segunda, «branco» na terceira, «amarelo» na quarta etc.

Assim pode-se fazer uma lista de matérias que usa uma cor de fundo diferente para as linha pares e impares:

<B_asmaterias>
<ul>
<BOUCLE_asmaterias(ARTICLES){par titre}>
<li style="background: [(#COMPTEUR_BOUCLE|alterner{branco, amarelo})];">#TITRE</li>
</BOUCLE_asmaterias>
</ul>
</B_asmaterias>

Este filtro não é binário: é possível fazer com que apresente um dado, todas as x mudanças de valor; o loop seguinte exibirá os títulos de matéria por blocos de 4, mudando de cor a cada bloco:

<BOUCLE_asmaterias(ARTICLES) {par titre}>
[(#COMPTEUR_BOUCLE|alterner{<p style="color:vermelho;">, '', '', '', <p style="color:verde;">, '', '', ''})]
#TITRE<br>
[(#COMPTEUR_BOUCLE|alterner{'', '', '', </p>})]
</BOUCLE_asmaterias>
[(#TOTAL_BOUCLE|modulo{4}|=={0}|non)</p>]
</B_asmaterias>

Note: o filtro |alterner pode ser aplicado a outros campos ou tags calculadas além de #COMPTEUR_BOUCLE, desde que o seu valor seja um inteiro estritamente positivo.

Ver também

A tag

O filtro

Autor Ricardo Porto Publié le :

Traductions : català, English, Español, français, Nederlands, Português