XList 1.3

Informace

Název XList 1.3
Pro verzi SunLight CMS 7.5.x
Autor ShiraNai7

Parametry

Parametr Vysvětlení Možné hodnoty
1. cesta k adresáři Určuje adresář, ve kterém budou vyhledávány položky. Relativní cesta (např. upload/obrazky).
2. maska souborů Určuje, které soubory se mají zobrazit.
  • přípona - budou vyhledány jen soubory se zvolenou příponou; více přípon lze oddělit středníkem
  • * - budou vyhledány soubory s libovolnou příponou
  • % - budou vyhledány pouze adresáře
3. řazení položek Určuje, jak se položky seřadí.
  • 0 - nijak
  • 1 - abecedně (A-Z)
  • 2 - abecedně (Z-A)
  • 3 - podle času změny (od starších po novější)
  • 4 - podle času změny (od novějších po starší)
  • 5 - náhodně
4. nastavení stránkování Nastavení stránkování položek.
  • 0 - vypnuto
  • číslo (např. 10) - na jedné straně bude maximálně x položek
5. maska kódu položky Maská kódu udává, jaký kód jednotlivé položky vyprodukují.

V masce kódu můžete použít následující značky, které budou nahrazeny danými informacemi:

Jednoduché značky

[tag]dir[/tag]zvolená cesta k adresáři (s lomítkem na konci)
[tag]link[/tag]úplná cesta k položce
[tag]name[/tag]název položky (bez přípony)
[tag]filename[/tag]název položky (s příponou)

Pokročilé značky

[tag]filesize,name*(nepov.)[/tag]

Velikost aktuální položky v kilobajtech. Pokud je zvoleno name, bude se zjišťovat velikost položy zvoleny_adresar/name.

[tag]filetime,name*(nepov.)[/tag]

Formátovaný čas poslední změny položky. Pokud je zvoleno name, bude se zjišťovat poslední čas změny zvoleny_adresar/name.

[tag]link64[/tag]

Úplná cesta k položce zakódovaná pomocí base64_encode() a urlencode().

[tag]text64,text*[/tag]

Zvolený text zakódovaný pomocí base64_encode() a urlencode().

[tag]uid[/tag]

Unikátní identifikační číslo spuštěného HCM modulu.

[tag]step,x,text,text2(nepov.),endtext(nepov.)[/tag]

Vrátí text pokaždé, až uběhne x položek, jinak vrátí text2; vyjímku tvoří poslední zobrazená položka, u které je vrácen vždy endtext (pokud je nastaven).

[tag]data,soubor*[/tag]

Obsah textového souboru zvoleny_adresar/soubor.txt (přípona .txt je vždy automaticky přidána kvůli zabezpečení). Nezapomeňte, že systém pracuje v kódování UTF-8, takže i vkládané soubory by měly být v tomto kódování (proto je doporučuji psát v nějakém lepším editoru - např. PSPadu, použít lze i souborového manažera v administraci).

[tag]preg,pattern,replacement,subject*[/tag]

Vyhledání reg. výrazu pattern v subject a nahrazení replacement pomocí PHP funkce preg_replace().

* Nahrazení - V hodnotě parametru budou provedena následující nahrazení:

  • @name názvem aktuální položky bez přípony
  • @filename názvem aktuální položky s příponou
  • @dir cestou ke zvolenému adresáři (s lomítkem na konci)

Pravidla syntaxe - u [tag] značek jsou stejná jako u HCM modulů (viz oficiální dokumentace).

6. zobrazení stránkování
(nepovinné)
Určuje, kde bude zobrazeno stránkování (pokud je aktivní).
  • 0 - dole
  • 1 - nahoře
  • 2 - nahoře i dole
  • 3 - nikde
7. kód před výpisem
(nepovinné)
Kód před kódem položek, ale až za případným stránkováním. XHTML kód.
8. kód za výpisem
(nepovinné)
Kód ta kódem položek, ale ještě před případným stránkováním. XHTML kód.

Příklady

Uvedu dva příklady - jeden jednoduchý, druhý složitý. Oba budou vypisovat obrázky z adresáře upload/obrazky. Předpokládejme, že v tomto adresáři máme následující obrázky:

Pod každým příkladem je uveden výsledný kód, který by byl výstupem, pokud by v daném adresáři byly právě tyto obrázky.

Jednoduchý příklad

Následující příklad vybere všechny obrázky z adresáře upload/obrazky a zobrazí je.

[hcm]
xlist,
upload/obrazky/,
jpg;gif;png;jpeg,
1,
0,
"<img src='[tag]link[/tag]' alt='[tag]name[/tag]' />"
[/hcm]

Výsledek

<img src='upload/obrazky/jeliman.gif' alt='jeliman' />
<img src='upload/obrazky/mort.gif' alt='mort' />
<img src='upload/obrazky/alex.gif' alt='alex' />

Složitý příklad

Zobrazení obrázků z adresáře upload/obrazky v tabulce (3 obrázky na řádek) s automatickou tvorbou náhledů (pomocí externího systémového skriptu pro galerie), stránováním (9 obrázků na stranu) a zobrazením originálu pomocí Lightboxu. Hodí se až pro větší množství obrázků.

[hcm]
xlist,
upload/obrazky,
jpg;gif;png;jpeg,
1,
9,
"<td><a href='[tag]link[/tag]' class='lightbox' rel='xlistgal_[tag]uid[/tag]'><img src='remote/imgprev.php?id=[tag]link64[/tag]&amp;c&amp;h=128' alt='[tag]name[/tag]' /></a></td>[tag]step,3,'</tr><tr>','','</tr>'[/tag]",
2,
"<div class='gallery'><table><tr>",
"</table></div>"
[/hcm]

Výsledek

<div class='anchor'><a name='hcm_xlist1'></a></div>
<div class='gallery'><table><tr>
<td><a href='upload/obrazky/alex.gif' class='lightbox' rel='xlistgal_1'><img src='remote/imgprev.php?id=dXBsb2FkL29icmF6a3kvYWxleC5naWY%3D&amp;c&amp;h=128' alt='alex' /></a></td>
<td><a href='upload/obrazky/jeliman.gif' class='lightbox' rel='xlistgal_1'><img src='remote/imgprev.php?id=dXBsb2FkL29icmF6a3kvamVsaW1hbi5naWY%3D&amp;c&amp;h=128' alt='jeliman' /></a></td>
<td><a href='upload/obrazky/mort.gif' class='lightbox' rel='xlistgal_1'><img src='remote/imgprev.php?id=dXBsb2FkL29icmF6a3kvbW9ydC5naWY%3D&amp;c&amp;h=128' alt='mort' /></a></td></tr>
</table></div>