Artikkellister - eRedaktør tagger
I en mal kan en velge å ha én eller flere artikkellister. Denne artikkelen viser hvilke tagger og muligheter som finnes. Malen er en vanlig rendering med eRedaktør tagger, så du kan også hente ut felter som nevnt i den artikkelen.
En generell oversikt for en artikkelliste ser slik ut:
<er:itemlist [valg]>
<er:listheader>Vises før listeinnhold</er:listheader>
<er:listitem>Repeteres for hvert element i listen</er:listitem>
<er:listfooter>Vises etter listeinnhold</er:listfooter>
<er:listempty>Vises kun dersom det ikke fantes noe i listen</er:listempty>
</er:itemlist>
Her er et Example med testdata for å forklare litt hvordan en liste fungerer:
<er:itemlist templateid="12" categoryid="11" count="3">
<er:listheader>
<ul>
</er:listheader>
<er:listitem>
<li>
<h3><a href="{itemurl}"><!--e title --></a></h3>
<p class="dato"><!--e publishdate --></p>
<p><!--e pre:teaser --></p>
</li>
</er:listitem>
<er:listfooter>
</ul>
<er:pager><ul class="pagination"><!--e pagelist --></ul></er:pager>
</er:listfooter>
<er:listempty>
<div>Fant ingen elementer</div>
</er:listempty>
</er:itemlist>
Som du kanskje ser av Exampleet er artikkellisten delt opp fire deler: listheader, listitem, listfooter og listempty. Sistnevnte skrives kun ut dersom det ikke ble funnet noe innhold. Resten fungerer slik at listheader vises før første artikkel, listitem repeteres for hver artikkel (item), og listfooter vises etter siste artikkel. Dette løser problemet med tomme lister, ved at det da ikke skrives ut topp og bunn.
Det er mulig å droppe denne oppdelingen og legge inn innhold rett i <er:itemlist>. Da eRedaktør går da ut fra at alt er <er:listitem>.
Dersom en ønsker å dele artikkellisten opp i flere sider, må en ha en oversikt over hvilke sider som er tilgjengelige. Denne legges enten i header eller footer, eller begge steder. Se Exampleet for hvordan den ser ut. I tillegg er det mulig å legge inn tagger som henter ut mer informasjon om hvilken side man er på, og hvor mange sider det er til sammen.
Example: <!--e page --> av <!--e pagecount -->
Tagger i <er:pager>...</er:pager>
Alle taggene på formen <!--e tagnavn --> fungerer også med {tagnavn}.
<er:pager>
|
Starter sideoversikten
|
</er:pager>
|
Avslutter sideoversikten
|
<!--e pagelist -->
|
Lister ut alle sider som listeelementer, <li>...</li>
|
<!--e page -->
|
Skriver ut gjeldende sidetall
|
<!--e pagecount -->
|
Skriver ut totalt sideantall
|
<!--e nextpage -->
|
Skriver ut neste sidetall, eller gjeldende dersom det ikke er flere sider
|
<!--e previouspage -->
|
Skriver ut forrige sidetall, eller gjeldende dersom en er på første side
|
<er:pagelist>...
</er:pagelist>
|
Tilsvarer pagelist, men gir deg mulighet til å styre hvordan listen ser ut. (ASP.NET)
|
Example på bruk (fjern det som ikke passer):
<ul>
<li><a href=”?page=1”>Første side</a></li>
<li><a href=”?page={previouspage}”>Forrige side</a></li>
<!--e pagelist -->
<li><a href=”?page={nextpage}”>Neste side</a></li>
<li><a href=”?page={pagecount}”>Siste side</a></li>
</ul>
Example på <er:pagelist>:
<er:pagelist><li class="emptyclass {active}"><a href="?page={pagenumber}"><!--e pagenumber --></a></li></er:pagelist>
Tilgjengelige attributter
templateid
|
Angir en eller flere id-er til feltsett som kan vises i listen. Dersom det angis flere, gjøres dette med komma mellom.
|
categoryid
|
Angir en eller flere id-er til kategorier som kan vises i listen. Dersom det angis flere, gjøres dette med komma mellom.
|
count
|
Antall elementer som skal vises i listen
|
orderby
|
Hvilket tabellfelt(i databasen) skal det sorteres etter
|
excludeprevious
|
Angi true/false for å angi om elementer som er vist i andre lister på siden skal utelates.
|
where
|
Mulighet for å legge inn egen SQL for å styre hva som vises i listen
|
itemsperpage
|
Brukes når en deler opp listen i flere sider, og angir hvor mange som skal vises per side. Kan også bruke count.
|
page
|
Hvilken side som skal vises først, angir også at sidedeling skal benyttes. Overstyres av url, page=2
|
searchstring
|
For bruk ved søk. Legg inn søkestrengen her.
|
Inne i en artikkelliste kan en hente ut alle feltene til feltsettene som er i bruk. Det er også noen funksjoner tilgjengelig for å vise ulik html nedover i listen:
<!--e ifcount:[valg] -->[innholdsmal]<!--e endifcount:[valg] -->
Valgene kan være positive heltall for å angi hvilken iterasjon som skal vise innholdet, eller fra følgende liste:
even
|
Innhold vises for hvert partall
|
odd
|
Innhold vises for hvert oddetall
|
mod3
|
Innhold vises hver tredje gang
|
mod4
|
Innhold vises hver fjerde gang
|
mod5
|
Innhold vises hver femte gang
|
mod6
|
Innhold vises hver sjette gang
|
Utlistingen begynner på 1.
Det er også mulig å sjekke om det ikke er en verdi.
For Example <!--e ifcount:not1 -->…<!--e endifcount:not1 -->