Boucles dentro de boucles

vários níveis de leitura

Exibir numa mesma página elementos provenientes de vários locais.

Já sabemos gerir uma lista de títulos numa rubrica. Agora, vamos exibir, na mesma página, os elementos da própria rubrica: o seu título, texto de apresentação, etc.

Experimente!

Eis uma solução:

<BOUCLE_rubrique(RUBRIQUES){id_rubrique}>
<h1>#TITRE</h1>

<BOUCLE_article(ARTICLES){id_rubrique}{par date}{inverse}{0,10}>
<a href="#URL_ARTICLE">#TITRE</a><br>
</BOUCLE_article>

[(#TEXTE|justifier)]
</BOUCLE_rubrique>

Invoca-se a página com: http://seusitio.net/tutorial.php3?id_rubrique=1. O que se passou aqui?

A nossa boucle ARTICLES (artigos) está integrada numa boucle RUBRIQUES (rubricas). O contexto da boucle ARTICLES é a id_rubrique dada pela boucle RUBRIQUES, que vai por si própria buscar o contexto dado pelo URL (id_rubrique=1). Portanto estamos, ao nível dos ARTICLES, com a id_rubrique pedida. Deste ponto de vista, nada muda.

Em contrapartida, a boucle RUBRIQUES permitiu ao SPIP seleccionar os valores dos campos da rubrica em causa: podemos portanto exibir o #TITRE (título) e o #TEXTE (texto) desta rubrica. Note que este #TEXTE seria o da rubrica mesmo que chamemos também #TEXTE na boucle ARTICLES. O funcionamento hierárquico do SPIP garante que o #TEXTE de um artigo não extravasa da boucle ARTICLES...

Uma última observação: introduzimos um filtro |justifierno campo #TEXTE. Este filtro modifica o conteúdo do texto antes de o instalar na página final. Isto aguça o seu apetite?

Autor guidaq Publié le : Mis à jour : 21/03/23

Traductions : عربي, català, corsu, Deutsch, English, Español, français, italiano, Nederlands, polski, Português, русский, slovenčina, Türkçe, українська