Scritto Script  |  List

För att publicera en lista från Second Base använder man List och skapar därmed en slinga som upprepas ett visst antal gånger. Vad som ska listas och hur många gånger listan ska upprepas bestämmer man i det aktuella mallfältet i Second Base. En lista kan bestå av sidor eller filer och vara inställd på att visa samtliga objekt eller vara begränsad till ett fast antal.

Funktionen kräver två taggar; en start-tagg innehållande en hänvisning till önskat fält, samt en slut-tagg. Dessa taggar ska omringa den kod man önskar att upprepa.

Alla anrop som görs inom en lista hänvisar automatiskt till det aktuella objekt som slingan befinner sig på (förutom information som hänvisas till en uppsättning eller annan sida än den man befinner sig på).

Exempel

Här nedan syns ett exempel på en enkel nyhetsslinga, där listan #news kan vara inställd på att hämta de fem senaste nyheterna, varpå slingan kommer att köras fem gånger och därmed resultera i fem li-taggar, numrerade tack vare print index som ökar för varje upprepning.

<ul class="news">
{ start list #news }
   <li item="{ print index }">
      <a href="{ print link }">
         <p class="headline">{ print field #headline }</p>
         <p class="date">{ print date }</p>
      </a>
   </li>
{ end list }
</ul>

Inom en lista finns också möjlighet att kontrollera vilken typ av objekt som slingan befinner sig på, och kan användas vid listning av både sidor och filer.

{ start list #idname }

   <p>Aktuell typ är: { print type }</p>

   { if type is "page" }...{ end if }
   { if type is "alias" }...{ end if }
   { if type is "archive" }...{ end if }
   { if type is "folder" }...{ end if }
   { if type is "file" }...{ end if }
   { if type is "image" }...{ end if }

   { if template is #id }...{ end if }

{ end list }

List from

Det är också möjligt att publicera en lista från en annan sida än den man befinner sig på eller en lista som ligger i den aktuella sidans uppsättning.

{ start list #news from #idname }
   <p>{ print field #headline }</p>
{ end list }

{ start list #news from set }
   <p>{ print field #headline }</p>
{ end list }