Jak změnit a upravit vzhled (layout) u phpRS systému
Článkové šablony: Nastavení a práce se třídou pro výpis článků
Pro práci se články v rámci čtenářského modulu je určena speciální třída CClanek(), která umožňuje výpis jednoho nebo více článků
na základě zadaných vstupních podmínek (atributů). Třída CClanek() se nalézá v souboru trclanek.php.
Nastavení třídy CClanek:
Ještě před tím, než můžete zavolat vnitřní funkci Ukaz(...), která vám umožní získat data spojená s konkrétním článkem(y),
musíte provést konfiguraci třídy CClanek(), abyste dosáhli požadovaného výsledku.
V případě výstupu dat máte v zásadě na výběr pouze ze dvou variant, kde první varianta slouží k výpisu článku na základě jeho jednoznačné
identifikace prostřednictvím jeho linku a druhá varianta slouží k množstevně omezenému výpisu nejaktuálnějších článků.
Výsledky obou variant lze omezit prostřednictvím následujících konfiguračních příkazů:
- Vnitřní funkce NastavVydani(...) slouží k nastavení podmínky, zda se má nebo nemá kontrolovat při dotazu
na články přepínač "Vydat článek". Defaultně je tato podmínka nastavena na ANO.
- Vnitřní funkce HlidatAktDatum(...) slouží k nastavení podmínky, zda se má nebo nemá kontrolovat při dotazu
na články "Datum vydání článku". Defaultně je tato podmínka nastavena na ANO.
- Vnitřní funkce HlidatPlatnost(...) slouží k nastavení podmínky, zda se má nebo nemá kontrolovat při dotazu
na články "Datum stažení článku z hlavní stránky". Defaultně je tato podmínka nastavena na NE.
- Vnitřní funkce HlidatLevel(...) slouží k nastavení podmínky, zda se má nebo nemá kontrolvat (porovnávat) při dotazu
na články hodnota levelu čtenáře a dotazovaného(ých) článku(ů). Defaultně je tato podmínka nastavena na NE.
- Vnitřní funkce NastavZakazovouSab(...) slouží k nastavení reakce na stav, kdy systém identifikuje nepřístupný
článek. Možné varianty jsou: a) článek nezobrazit vůbec, b) zobrazit formou tzv. "zákazové článkové šablony". Defaultně je
nastaveno článek nezobrazit, což odpovídá stavu NE.
Všech pět výše uvedených funkcí se nastavuje prostřednictvím číselného vyjádření logické hodnoty
true / false, kde 1 = ANO (true) a 0 = NE (false).
Ukázka nastavení kontroly podmínky "Vydat článek" na hodnotu NE:
$clanek = new CClanek(); // inicializace třídy CClanek
$clanek->NastavVydani(0);
Pro získání samotných dat z databáze je nutné spustit dotaz, který má dvě možné varianty:
1) Výpis jednoho článku; proměnná $cisloclanku obsahuje link požadovaného článku
$clanek = new CClanek(); // inicializace třídy CClanek
$error=$clanek->NactiClanek($cisloclanku);
2) Výpis množstevně omezenému výpisu nejaktuálnějších článků; proměnná $mnozstvi obsahuje počet požadovaných článků
$clanek = new CClanek(); // inicializace třídy CClanek
$error=$clanek->NactiClanky($mnozstvi);
V obou případech si můžete všimnout proměnné $error, která zachycuje výsledek konkrétního dotazu, jenž odpovídá jedničce,
pokud vše proběhlo dobře nebo nule, pokud nastala chyba.
V případě druhé varianty je nutné upozornit na skutečnost, že pro přechod na další "řádek" (článek) ve výpis je nutné zavolat
interní funkci DalsiRadek().
Výpis získaných dat:
K výpisu získaných dat slouží funkce Ukaz(...), která na základě svého vstupního atributu vrátí odpovídající hodnotu.
Přehled možných atributů funkce Ukaz(...):
- pozice ... předá hodnotu pořadí článku ve výpis; počítá se od nuly
- pocetclanku ... vrátí celkový počet článku ve výpise
- idc ... id článku (není to samé jako "link")
- link ... link článku (slouží k identifikaci článku)
- link_seo ... SEO verze linku na článek (slouží pouze k SEO účelům)
- titulek ... nadpis článku
- uvod ... úvodní část článku
- text ... hlavní obsahová část (jejímu načtení lze zabránit při nastavování třídy CClanek())
- tema_id ... id rubriky
- tema_jm ... jméno rubriky
- tema_obr ... obrázek rubriky
- datum ... datum vydání článku
- autor_id ... id autora článku
- autor_jm ... jméno autora článku
- autor_mail ... e-mail autora článku (včetně uvozujícího řetězce mailto:)
- autor_jen_mail ... čistý e-mail autora článku
- autor_im ... IM indetifikace autora článku
- pocet_kom ... počet komentářů přiřazených ke článku
- visit ... počet zobrazení článku
- visit_plus ... počet zobrazení článku navýšený o jedničku
- slovni_popis ... stručný slovní popis obsahu článku; obsah lze např. přenést do META tagu "description" nebo "keywords".
- visible ... hodnota určující zda má příslušný článek povoleno vydání
- zdroj ... zdroj článku
- skupina ... id skupiny článků se stejným zaměřením (není totéž co id rubriky)
- znacky ... přepínač aplikace phpRS značek
- typ_clanku ... přepínač určující typ článku: 1 = standardní, 2 = zkrácený
- sablona ... adresa přiřazené článkové šablony
- zakazova_sab ... výsledek testu na aplikaci zákazové varianty článkové šablony: 0 = neaplikovat, 1 = aplikovat
- level ... hodnota levelu článku
- anketa ... id přiřazené ankety; 0 = nebyla přiřazena žádná anketa
Ukázka volání funkce Ukaz(...) s atributem "titulek"
$clanek->Ukaz("titulek");
Pokud chcete pracovat se třídou CClanek() mimo základní úroveň – např. ve funkci, tak musíte k proměnné $clanek
přistupovat jako ke globální proměnné; tedy jako ke $GLOBALS["clanek"].
Ukázka volání:
$GLOBALS["clanek"]->Ukaz("titulek");