Prihlásenie | Registrácia

MNews Jednoduchý redakčný systém bez databázy

Šablóny

Jednou z nových funkcií v MNews 2 je tvorba vlastných šablón. Žiaľ, k MNews zatiaľ neexistuje žiadna dokumentácia. Na veľa vecí celkovo k MNews dokumentáciu netreba (ale bude!), pretože úkony sú, myslím si, primitívne. To sa však netýka tvorby vlastných šablón, ktorú popíšem v dnešnom článku.

Tvorba šablón

Šablóny ako také existujú v MNews od samého začiatku. Umožňujú ľahké upravenie generovaného výstupu bez nutnosti zásahov priamo do kódu stránky, či systému MNews. V jednotke existovalo 5 druhov šablón, ktoré bolo možné upravovať, v 2ke je ich 10 (zatiaľ). Hlavnou zmenou je však to, že v 1ke mohla existovať len 1 šablóna ku každému druhu, v 2ke to nie je obmedzené. Ale pekne postupne...

Šablóny tvorí viacero položiek: skupiny šablón (predvolená skupina a ostatné vytvorené užívateľom), typy šablón (šablóna pre hlavný výpis noviniek, pre výpis v kategórii, pre stránku, komentáre,...) a samotné šablóny (šablóny článku, šablóna stránky). Každá šablóna je určitého typu a je zaradená v určitej skupine. Typ určuje, kde bude daná šablóna využívaná (či na článku, alebo bude aplikovaná na komentáre). Význam skupín vysvetlím nižšie.

Kedy je dobré použiť ďalšie šablóny?

Typický príklad nájdete na tomto webe: články sa zobrazujú na hlavnej stránke v pravom stĺpčeku a kompletný prehľa článkov je na samostatnej stránke. Ako vidíte jedná sa o rovnaký výpis článkov (len na hlavnej stránke je výpis obmedzený na 2 články a zakázané zobrazovanie stránkovania), avšak aj tak sa výpis líši graficky a zobrazenými informáciami o článku - sú tu použité 2 rôzne šablóny rovnakého druhu (Články (hlavný výpis))!
Pridanie in=ho typu šablóny sa môže hodiť v prípade, ak chcete použiť 
Tvorbu vlastných šablón oceníte teda vtedy, ak na jednom webe chcete mať výpis článkov graficky odlíšený.

Pridanie nového typu šablóny do existujúcej skupiny

MNews v základe obsahuje 6 typov šablón: Články (hlavný výpis)Detail článku, Stránka, Komentáre, Profil užívateľa a RSS.
Pokiaľ chcete mať inú šablónu pre výpis článkov v jednotlivých kategóriách (ktorá sa tak bude líšiť od hlavného výpisu článkov), musíte pridať nový typ šablón: Články (kategórie). Postup v tomto prípade je veľmi jednoduchý, v sekcii Nástroje > Šablóny kliknete na Pridať šablónu, skupinu vyberiete mn_default (základná skupina šablón, ktorá je predvolená) a v následujúcom kroku vyberiete typ šablóny Články (kategórie).
Šablónu si už len upravíte podľa vás a celý výpis článkov v kategórií bude odteraz formátovaný touto šablónou. Obdobne to platí pre šablóny pre výpis článkov pri vyhľadávaní a v archíve - na každý špecifický výpis sa dá aplikovať iný typ šablóny. Pre príklad opäť nemusím chodiť ďaleko, na tomto webe je výpis článkov vždy trošku pozmenený, pokiaľ si vypisujete články z danej kategórie, alebo od daného autor (kategória, alebo meno autora nie je klikateľné, viedlo by to na rovnakú adresu): články z kategórie Beta vývoj (zašednutie názvu kategórie).

Pridanie rovnakého typu šablóny

Iná situácia nastáva v prípade, ak potrebujeme rovnaký výpis článkov (napríklad Články (hlavný výpis) ako na tomto webe) formátovať dvoma rôznymi spôsobmi. V tomto prípade nemôžme pridať 2 rovnaké typy šablón do jednej skupiny, ale je potreba si vytvoriť novú skupinu šablón. Tu je potreba upozorniť, že v súčasnosti nie je možná úprava skupín šablón - pokiaľ raz skupinu vytvoríte, nedá sa zmeniť jej názov ani ju nie je možné vymazať. O možnostiach manipulácie uvažujem, ale nie je to priorita a vznikalo by s tým množstvo problémov.
Pridanie novej skupiny je jednoduché a uskutočňuje sa počas procesu pridania novej šablóny - namiesto existujúcej skupiny si zvolíte novú skupinu. Názov skupiny nesmie obsahovať diakritiku, veľké písmená, ani medzery, pokiaľ tieto znaky použijete, bude názov automaticky upravený (napr názov "Špeciálna sekcia" bude automaticky prevedený na "specialna-skupina"). Názov skupiny sa totiž používa primárne v kóde samotnom a nie je potrebné uchovávať jeho "krajší" stav.
Po zvolení názvu skupiny šablóny a odkliknutí tlačítka "pokračovať" sa dostanete na výber typu šablóny. Oproti výberu v predvolenej skupine si musíte zvoliť aj názov šablóny. Je to pre ľahšie odlíšenie na výpise šablón - nevznikne tak 5 šablón s názvom "Výpis článkov", ale vy sami si volíte názvy. Ja som si napríklad tu na webe vytvoril skupinu "mini-sablony" a do nej pridal šablónu "Mini výpis článkov" (typ šablóny: Články (hlavný výpis)), ktorú vydíte v pravom stĺpčeku na hlavnej stránke. Následne si už šablónu upravíte podľa seba ako potrebujete. Dosiahli sme tak to, že máme 2 rovnaké typy šablón, zaradené v rozličných skupinách šablón. Ostáva už len jediné - aplikovať tú ktorú šablónu na našom webe.

Aplikácia šablóny

Na webe vo výpise článkov aplikujeme použitie šablóny veľmi jednoducho - do nášho php kódu, ktorým vkladáme MNews do stránky pridáme premennú $mn_tmpl a v nej špecifikujeme názov skupiny šablón (áno ten, ktorý nesmie obsahovať diakritiku, ani medzery, len znaky "a-z0-9_-"). Výsledný kód bude vyzerať nejako takto (uvádzam príklad z tejto stránky aj s ďalšími voľbami, dôležité je tam však najmä $mn_tmpl):

<?php
$mn_tmpl = 'mini-sablony'; // špecifikácia skupiny šablón, ktorá sa má uplatniť
$mn_count = 2; // obmedzenie výpisu na 2 články
$mn_pagination = false; // vypnutie stránkovanie pod výpisom
include './admin/mn-show.php';
?>

Vo výpise nie je špecifikovaný žiaden "mód" - tj nebude sa zobrazovať ani menu, ani archív, či niečo podobné - jedná sa o základný výpis článkov a preto bude aplikovaný typ šablóny Články (hlavný výpis). Keďže som cez $mn_tmpl špecifikoval skupinu šablón "mini-sablony" a v nej sa nachádza šablóna zaradená pod týmto typom šablóny s názvom "Mini výpis článkov", bude aplikovaná táto šablóna. Predvolená šablóna "Výpis článkov" (ktorá je zaradená v základnej skupine "mn_default") teda nebude aplikovaná a nebude z nej nič preberané.

Na stránke sa teda nedá upresniť, ktorá šablóna má byť použitá, dá sa však špecifikovať, z ktorej skupiny šablón sa majú jednotlivé šablóny aplikovať. Jedna skupina môže obsahovať vždy len jeden typ z každej šablóny - môže ich obsahovať všetky, alebo len jednu z nich. Pokiaľ sa nejaký typ šablóny v skupine nenachádza, použije sa základná šablóna, zo skupiny "mn_default".

Verím, že sa mi podarilo aspoň trochu priblížiť šablóny a ich použitie so systémom MNews. Pokiaľ by však stále bolo niečo nejasné, kľudne sa ma opýtajte v komentároch. Mile rád vám otázky zodpoviem a poprípade aj doplním článok.

 

$mn_pagination = false;$mn_count = 2;          $mn_pagination = false;

mylan Návody 29.04.2010 02:47 Zobrazené: 16432×
MNews 2, návod, šablóny

Komentáre

1 · Felix Avatar Felix · 18.05.2010 14:35
Skvely ;-) Jedna z nejlepsich veci, ktery tento system v2.0 dostal =)..
2 · seredskysprot Avatar seredskysprot · 25.01.2012 14:54
Urobil som všetko ako je v návode a predsa mi zobrazuje články podľa default šablóny. Vytvoril som si novú skupinu, nové šablóny, nas tránke som pridal $mn_tmpl = 'xxx'; kde xxx je názov skupiny a stále nič. Nebude to mat niečo spoločné s právami? Tie som nastavoval pre priecinok DATA a podpriečinka na 777, s ai zda že kedysi mi to na localhost na svojom PC fungovalo, teraz na nete to nejde
Pridanie komentára



Bold text Italics Link Code    :-) ;-) 8-) :-D :-P :-O :-( :-/ ;,( ]:-D :-[

Ochrana proti spamu. Napíšte prosím číslicu jedenásť: