Tartalmak listázása
Hogyan lehet automatikusan egyszerre több tartalmat listázni egy oldalon.
2021.11.19 — Posted by Webb & Flow
Tartalomjegyzék
Arra lehet használni, hogy bizonyos feltételeknek megfelelő tartalmakat listázzunk és ezt a listát beépítsük az oldalba.
Szintaxis:
{CONTENTLIST $sablon=1234}
Paraméterek
- $sablon
- a generáláshoz használt Item Sablon azonosítója
- kötelező
- $section
- szűrő feltétel
- milyen fajta tartalmat listázzon
- opcionális
- lehetséges értékek:
- nm (normál tartalom)
- mc (főkategória)
- sc (alkategória)
- tg (tag)
- th (technikai tartalom)
- default érték: nm
- $category
- szűrő feltétel
- kategória azonosító
- opcionális
- ha meg van adva, akkor azokat a tartalmakat listázza, amik pontosan a megadott kategóriában vannak
- lehetséges értékek:
- hard code-olt, ct_ kezdetű tartalom azonosító, ahol a tartalom fő vagy alkategória fajtájú lehet
- CONTENTID
- csak fő és alkategória fajtájú tartalmaknál van értelme
- az aktuálisan publikálandó tartalom azonosítóját helyettesíti be dinamikusan, azaz az adott tartalom alá tartozó tartalmakat fogja szűrni
- CATEGORYID
- csak alkategória, illetve normál fajtájú tartalomnál van értelme
- az aktuálisan publikálandó tartalom kategóriájának azonosítóját helyettesíti be, azaz az adott tartalom testvéreit listázza (alap esetben beleértve az aktuális tartalmat is)
- $parentcategory
- szűrő feltétel
- kategória azonosító
- opcionális
- ha meg van adva, akkor azokat a tartalmakat listázza, amik vagy pontosan a megadott kategóriában, vagy annak egy alkategóriájában vannak
- $tag
- szűrő feltétel
- tag azonosító
- opcionális
- ha meg van adva, akkor azokat a tartalmakat listázza, amiknél ez a tag be van állítva
- $tags
- szűrő feltétel
- tag azonosító lista, az egyes értékek & karakterrel vannak elválasztva egymástól
- opcionális
- ha meg van adva, akkor azokat a tartalmakat listázza, amiknél az összes, itt megadott tag be van állítva
- $contentType
- szűrő feltétel
- content type azonosító
- opcionális
- ha meg van adva, akkor azokat a tartalmakat listázza, amik ezt a content type-ot használják
- lehetséges értékek
- hard code-olt, cnty_ kezdetű content type azonosító
- CONTENTTYPEID
- az aktuálisan publikálandó tartalom content type-jának azonosítóját helyettesíti be dinamikusan, azaz az adott tartalommal azonos típusú tartalmakat fogja szűrni
- $excludeContents
- szűrő feltétel
- tartalom (normal content, category, tag) azonosító lista, az egyes értékek & karakterrel vannak elválasztva egymástól
- opcionális
- ha meg van adva, akkor a többi feltétel által meghatározott tartalom listából kizárja azokat, amiknek az azonosítója itt fel lett sorolva
- $limit
- hány elem szerepeljen a listán
- opcionális
- default érték: 100
- $offset
- hány elem legyen a lista elejéről eldobva
- opcionális
- default érték: 0
- $order
- melyik mező szerint legyenek a tartalmak rendezve
- a RANDOM értéken kívül minden más esetben először a weight mező szerint van rendezve növekvő sorrendben, és csak ezután a megadott mező szerint
- opcionális
- lehetséges értékek:
- TITLEASC
- a title mező szerint növekvő sorrendben
- TITLEDESC
- a title mező szerint csökkenő sorrendben
- LASTMODDATEASC
- az utolsó módosítás ideje szerint növekvő sorrendben
- LASTMODDATEDESC
- az utolsó módosítás ideje szerint csökkenő sorrendben
- CREATEDATEASC
- a létrehozás ideje szerint növekvő sorrendben
- CREATEDATEDESC
- a létrehozás ideje szerint csökkenő sorrendben
- FIRSTPUBLICDATEASC
- az első publikálás ideje szerint növekvő sorrendben
- ha még nem volt generálva, akkor a content date mező értéke van használva
- FIRSTPUBLICDATEDESC
- az első publikálás ideje szerint csökkenő sorrendben
- ha még nem volt generálva, akkor a content date mező értéke van használva
- LASTGENDATEASC
- az utolsó publikálás ideje szerint növekvő sorrendben
- ha még nem volt generálva, akkor a content date mező értéke van használva
- LASTGENDATEDESC
- az utolsó publikálás ideje szerint csökkenő sorrendben
- ha még nem volt generálva, akkor a content date mező értéke van használva
- TITLEASC
- $divider
- szám
- opcionális
- ha meg van adva, akkor a $modulus paraméterrel együtt meg lehet adni, hogy csak minden X. elemet listázza.
- $modulus
- szám
- opcionális
- az értéke 0 és $divider - 1 között lehet
- ha nincs megadva, akkor az érték 0
- $withoutCurrentContent
- szám
- opcionális
- ha nem 0 az értéke, akkor kizárja a listázásból az aktuálisan publikálandó tartalmat, amennyiben az megjelenne a listában
- default érték: 0
A szűrő feltételek mind opcionálisak és egyszerre többet is meg lehet adni, ebben az esetben a feltételeket a rendszer ÉS kapcsolatban elemzi ki, azaz csak azok a tartalmak lesznek listázva, amik egyszerre mindegyik feltételnek megfelelnek.
A generálás során minden egyes elemnél ki lesz generálva a megadott Item Sablon az adott tartalomra jellemző változó értékekkel, és végül ezek az elemek összefűzve kerülnek be a hívás helyére.