Chapter 5. Tagy pro tvorbu šablon

  1. Tagy pro navigaci článků

    1. Navigace jednotlivých článků

      TXP poskytuje dvě skupiny tagů pro zobrazení spojení k předchozímu a následujícímu článku.

      1. <txp:link_to_next></txp:link_to_next>

        Pro vytvoření spojení k následujícím článku použíjeme tento kontejnerový tag do něhož umístíme text který popisuje odkaz, například, "Další článek".

        Jestli chceme zobrazit titul článku, můžeme umístit uvnitř předchozího tagu tag

        <txp:next_title />

        Standardní způsob užití TXP TAGBUILDER ASSISTANT (Užitečné příkazy), klikneme na "Odkaz na další článek" a pak kliknout na "vytvořit tag" a potvrdit.

        Example 5.1. Příklad použití tagu link_to_next

        <txp:link_to_next><txp:next_title /></txp:link_to_next>
      2. <txp:link_to_prev></txp:link_to_prev>

        Stejně, můžeme nakombinovat tagy pro nastavení spojení na předchozí článek.

        Example 5.2. Příklad použití tagu link_to_prev

        <txp:link_to_prev><txp:prev_title /></txp:link_to_prev>
    2. Navigace pro více článků tagy txp:newer a txtp:older

      Jestliže chcete použít tuto navigaci pro stránky, kde jsou různé články uvedené, musíte použít tag

      <txp:newer></txp:newer>

      pro novější články a

      <txp:older></txp:older>

      pro starší články v souladu s kriteriem třídění článků.

      Výpis článků a kategorií je samozřejmě na vaší hlavní stránce.

      Jestliže máme tagy užívané jen v jednotlivých článcích a ekvivalent pro přehledovou stránku, můžeme je použít ve stejné šabloně?

      Podmíněné tagy jsou naší záchranou. Pojďme se podívat na příklad:

      Example 5.3. Podmíněné zobrazení článků a stránek

      <txp:if_individual_article>
      <p><txp:link_to_prev><txp:prev_title /></txp:link_to_prev> |
      <txp:link_to_next><txp:next_title /></txp:link_to_next></p>
      </txp:if_individual_article>
      
      <txp:if_article_list>
      <p><txp:older>Prev Page</txp:older> |
      <txp:newer>Next Page</txp:newer></p>
      </txp:if_article_list>

      Jedna vlastnost

      <txp:newer>

      a

      <txp:older>

      tagů. Od verze 1.17b se zdá, že tyto tagy pracují jen tehdy, jestliže je umístíte ve vaší šabloně až po

      <txp:article>

      tagu. Ale nevrací žádný výsledek, jestliže je umístíte před ním.

  2. Tagy pro navigaci stránek

    Pod tímto názven rozumíme tagy, které umožňují rychlý skok z jedné části webu na část další.

    1. <txp:category_list />

      Výstupem je seznam kategorií. Můžete požít následující atributy:

      category - seznam vypsaných kategorií, pokud je prázdný vypíše všechny

      Můžeme použít společné atributy wraptag, label a break

      Example 5.4. Příklad použití tagu category_list

      <txp:category_list category="O mě" wraptag="ul" break="li" />
    2. <txp:section_list />

      Výstupem je seznam sekcí (rubrik) stránek.

      Můžete použít společné atributy wraptag, label a break

      Tag není od verze 1.17b zobrazován v TXP TAGBUILDER ASSISTANT

    3. Link na vaši domácí stránku <txp:link_to_home></txp:link_to_home> tag

      Example 5.5. Příklad použití tagu link_to_home

      <txp:link_to_home>Domů</txp:link_to_home>

      pro návrat na domácí stránku.

      Tag může být umístěný kdekoliv na vaší stránce.

      Je samozřejmé, že slovo Domů můžeme nahradit vlastní definicí, třeba Na hlavní stranu nebo jakkoliv.

    4. <txp:popup />

      Tento tag vygeneruje XHTML tag <select>, který umožní rychlý vstup do jednotlivých sekcí a kategorií vašeho webu. Zobrazení je realizováno na specifikované stránce.

      Můžeme použít společné atributy wraptag, label a atribut

      type

      který může nabývat hodnot c nebo s, podle toho zda chceme výpis článků na stránku, nebo zobrazení jednoho článku na stránku.

      Example 5.6. Příklad použití tag popup

      <txp:popup label="nějaký text" type="c" wraptag="div" />
    5. <txp:recent_articles />

      Tento atribut umožňuje vypsat přehled vydaných článků.

      Můžeme použít společné atributy limit, wraptag, label a break a další atributy:

      category
      sortby
      sortdir

      ve stejném významu jako u tagu <txp:article_custom>

      Example 5.7. Příklad použití tagu recent_articles

      <txp:recent_articles label="Recently" limit="10" 
           break="<br />" wraptag="div" category="O mě" 
           sortby="Posted" sortdir="desc" />
    6. <txp:recent_comments />

      tento tag vypíše seznam přijatých kometářů.

      Můžeme použít společné atributy limit, wraptag, label a break.

      Example 5.8. Příklad použití recent_comment

      <txp:recent_comments label="Recent Comments" 
           limit="10" break="<li>" wraptag="ul" />
    7. <txp:related_articles />

      Tento tag vypíše seznam podobných článků z jedné kategorie.

      Můžeme použít společné atributy limit, wraptag, label a break.

      Example 5.9. Příklad použití related_articles

      <txp:related_articles label="Related Articles" 
           limit="10" break="<li>" wraptag="ul" />
    8. <txp:search_input />

      Tento tag zobrazí vyhledávací pole a potvrzovací tlačítko pro vyhledání klíčové fráze ve vašem webu.

      Můžeme použít společné atributy wraptag, label.

      Dále má dva speciální atributy:

      button - pro zadání textu na vyhledávacím tlačítku
      size - pro nastavení velikosti vyhledávacího pole

      Example 5.10. Příklad použití search_input

      <txp:search_input label="Search" button="Search" 
           size="15" wraptag="div" />
  3. Různé tagy

    1. <txp:css />

      Tento tag se použije v hlavní části vaší XHTML šablony a načte css soubor zadaný atributem n, kterým musí být jméno jednoho z vašich CSS souborů. Jestliže tento atribut není podporován (neexistuje CSS soubor), bude použita standardní CSS šablona.

      n="" se použije v css builderu tagů jenom když chcete přepsat stylopis přidělený dané části stránky, nebo jestliže chcete používat na vaší stránce víc než jeden stylopis.

    2. <txp:email />

      Tento tag zobrazí XHTML tag pro emailovou adresu. Převede písmené vyjádření emailové adresy na hexadecimální (prevence spamu).

      Tag využívá následující atributy:

      email - vaše emailová adresa
      linktext - text, který se zobrazí jako odkaz
      title - atribut title XHTML tagu 
      (zobrazí se jako text na žlutém podkladu při fokusu odkazu)

      Example 5.11. Příklad použití tagu email

      <txp:email email="adobrovolny@selfnet.cz" 
           linktext="Autor webu" 
           title="Odkaz na mail adobrovolny@selfnet.cz" />
    3. <txp:linklist />

      Logickým posláním tohoto tagu je zobrazit seznam vašich linků. Kromě běžných atributú limit, wraptag a break., můžete použít také:

      form - používá se pro formátování linku (přiřazení formu)
      category - kategorie zobrazených linků
      sort - třídící kritérium 
      Defaultní hodnota je ”linksort”, 
      to je podle toho jak byly linky přidávány do TXP. 
      Další možné hodnoty jsou:
      “date desc”
      “date asc”
      “random()”

      Example 5.12. Příkladu použití tagu linklist

      <txp:linklist form="article-list" 
           category="Oblíbené" limit="10" 
           sort="linksort" wraptag="ul" break="li" />
    4. <txp:sitename />

      Použitím tohoto tagu se zobrazí vaše Jméno webu, které jste zadali v administrační části ve správě->nastavení serveru.

    5. <txp:page_title />

      Tento tag zobrazí jméno vaší webové prezentace, následovaný názvem aktuálního článku, jestliže jste v režimu zobrazení jednotlivém článku. Můžete si vybrat jaký oddělovač bude umístěný mezi jméno webové prezentace a název aktuálního článku.

      Tento tag má také různé výstupy v kontextu toho, kde se v prezentaci nachází:

      • Ve stránce s přehledem kategorií tag zobrazí jméno webové prezentace, následovaný oddělovačem, následovaný jménem kategorie.

      • Ve stránkách s výsledky vyhledávání bude v poslední část titulu hodnota odpovídající národnímu nastavení ("výsledky hledání").

      • V komentářích bude titul obsahovat "komentáře k" před názvem aktuálního článku.

      separator - oddělovač záhlaví (server - článek)

      Example 5.13. příklad použití tagu page_title

      <txp:page_title separator="-" />
    6. <txp:output_form />

      Vkládací mód TextPatternu.

      Představte si, že máte statický fragment stránky, který chcete zahrnout do víc než jedné z vašich stránek. Tento fragment se může časem měnit, a chcete všechny z těchto změn promítnout do všech vašich stránek najednou.

      S tagem output_form můžete napsat fragment stránky v TXP formě a potom umístit tuto TXP formu do kódu vaší šablony stránky. Váš fragment bude zahrnutý ve všech stránkách do šablon stránek, do kterých jste dali TXP tag output_form.

      Tag může být volán rekurzivně, to znamená, že můžete umístit tento tag uvnitř další formy, a pak dát stejný tag odkazující na novou formu jinde, a tak dále …

      Speciálně je tag doporučený pro hlavičku, patičku, navigační bary a téměř každou komponentu opakovanou ve šablonách.

      form - jméno předlohy

      Example 5.14. Příklad použití tagu output_form

      <txp:output_form form="Links_new" />

      Example 5.15. Takto potom může vypadat vaše šablona stránky

      <txp:output_form form="head" />
      <txp:output_form form="logo" />
      <txp:output_form form="menu" />  
      <txp:output_form form="telo" />
      <div class="cleaner">&nbsp;
      </div>
      <txp:output_form form="paticka" />
    7. <txp:password_protect />

      Tento tag můžete použít k ochraně nějaké stránky vaší prezentace – s HTTP_AUTH – tak aby byla přístupná jen pro lidi , kteří znají požadovaný login a heslo. Tyto jsou specifikované v atributech tagu pro přihlášení do systému.

      login - přihlašovací jméno
      pass - heslo

      Example 5.16. Příklad použití tagu password protect

      <txp:password_protect login="ales" pass="sela" />
    8. <txp:site_slogan />

      Dejte tento tag do vaší prezentace tam, kde chcete zobrazit váš slogan specifikovaný v administrační části ve správě->nastavení serveru.

  4. Tagy pro XML formát

    TXP umí snadno vytvořit linky v XML formátu pro články a vaše linky.

    1. <txp:feed_link />

      Tento tag je možné použít na vytvoření XML formátu pro vaše existující články.

      Kromě atributů label, wraptag a limit může tag ještě obsahovat atributy:

      flavor:   Určuje XML formát. jsou možné dvě hodnoty rss nebo atom.
      category: Určuje kategorii, která bude převedena do XML formátu. 
      section:  Určuje sekci, která bude převedena do XML formátu.

      Example 5.17. Příklad použití tagu feed_link

      <txp:feed_link label="XML" category="O mě" 
           section="about" flavor="rss" wraptag="div" limit="5" />
    2. <txp:link_feed_link />

      Tento tag je možné použít na vytvoření XML formátu pro vaše existující linky.

      Kromě atributů label, wraptag a limit může tag ještě obsahovat atributy:

      flavor:   Určuje XML formát. jsou možné dvě hodnoty rss nebo atom.
      category: Určuje kategorii, která bude převedena do XML formátu.

      Example 5.18. Příklad použití tagu link_feed_link

      <txp:link_feed_link label="XML" category="Oblíbené" 
           limit="10" wraptag="div" />
  5. Tagy pro související články

    1. <txp:article />

      Je to pravděpodobně nejdůležitější ze všech TXP tagů. Tag <txp:article /> zobrazí jeden nebo několik příspěvků v závislosti na způsobu zpracování.

      Jestliže TXP detekuje váš požadavek na určitý článek, zobrazí ho. Jinak ukáže seznam článků.

      Tag může mít následující atributy:

      form:    TXP použije šablonu pro formátování článku. 
               Například: “single_article”, .... 
               Jestliže je atribut prázdný, použije se “default” 
      limit:   Počet stránek na list. 10 je defaultní hodnota.
      listform:Nastaví šablonu určenou pro výpis článků. 

      Example 5.19. Příklad použití tagu article

      <txp:article form="single_article" limit="10" 
           listform="lofi" />
    2. <txp:article_custom /> tag

      Je velmi podobný tagu <txp:article /> a používá se pokud chcete mít úplnou kontrolu nad zobrazením jednotlového článku, nebo výpisu článků. Proto má následující atributy:

      form:     TXP použije šablonu pro formátování článku. 
                Například: “single_article”, ....  
                Jestliže je atribut prázdný, použije se “deafult” 
      limit:    Počet stránek na list. 10 je defaultní hodnota.
      category: Kategorie článků, která bude zobrazována.
      section:  Přiřadí sekci k článkům. Defaultně je přehled článků na první 
                stránce a jednotlivé články na další straně.
      sortby:   Kritéria pro třídění článků:
                 o Posted: podle data vydání - defaultní nastavení
                 o Author: podle autora článku
                 o Last Modification: podle data poslední změny článku
                 o Title: abecedně podle názvu článku
                 o Section: pro třídění se použijí přiřazené sekce článku .
      sortdir:   Způsob třídění zobrazených článků:
                 o asc: vzestupné třídění
                 o desc: sestupné třídění.
      excerpted: Pokud chcete články s a nebo bez anotace:
                 o y
                 o n
      month:    výběr měsíce vydání článku ve formátu “yyyy-mm” 
      keywords: Pro odělení použijeme ";". Vypíší se pouze ty články, 
                které klíčová slova obsahují
      listform: Nastaví šablonu určenou pro výpis článků.    

      Example 5.20. Příklad použití tagu article_custom

      <txp:article_custom form="single_article" 
           limit="10" category="O mě" 
           section="about" sortby="Posted" 
           sortdir="desc" excerpted="y" 
           author="Ales" month="2005-08" 
           keywords="ad" listform="lofi" />
  6. Obrázkové tagy

    V TextPatternu můžeme zobrazovat obrázkovou galerii, i když zatím není podpora těchto tagů zabudována do TXP TAGBUILDER ASSISTANT

    Poznámka: pro obrázkové galerie a i mnoho jiných užitečných funkcí je TXP vybaven možností doinstalování nejrůznějších pluginů. Najdete je například v TextPatten Resources: http://textpattern.org/ .

    Nejdříve musíme nahrát obrázek a jeho náhled v sekci obrázky a přiřadit k nim nějakou kategorii (například novy_rok_2005 - bez mezer, diakritiky).

    Nyní si vysvětlíme postup vytváření fotogalerie:

    • Vytvořte novou stránku nazvanou třeba 'photo_page'.

    • Vytvořte novou sekci nazvanou třeba 'photo' a nastavte ji tak, aby používala stranu 'photo_page'.

    • Do strany 'photo_page' dejte tag <txp:image_index />, který zajistí výpis náhledů obrázků na stránku. Dobrá myšlenka je použití XHTML tagu div a CSS pro pozicování náhledů na stránce.

    • Kdekoliv chcete ukázat obrázek celý, dejte tag <txp:image_display />

    1. <txp:image_index /> tag

      Můžete specifikovat atribut c pro určení kategorie obrázků. Pokud atribut c není specifikován je nutné dát za URL adresu výraz: ?c=IMAGECATEGORY, kde imagecategory nahradíte jménem vaší kategorie , kterou chcete zobrazit.

    2. <txp:image_display /> tag

      Pokud máte vytvořenou galerii náhledů, můžete tento tag dát kamkoliv na stránku pro zobrazení obrázku vybraného v náhledu.

    3. <txp:thumbnail /> tag

      Tímto tagem můžete umístit náhled kamkoliv na stránku. Tag má následující atributy:

      name:   Jméno vašeho obrázku v TXP sekci obrázky. 
              [musí být specifikováno, pokud není specifikován atribut id]
      id:     id vašeho obrázku v TXP sekci obrázky. 
              [musí být specifikováno, pokud není specifikován atribut name]
      poplink:hodnota 1 způsobí zobrazení obrázku v popup okně.

      Tento tag přijímá také XHTML atributy style a align. Upozornění: [V XHTML 1.0 strict nejsou tyto tagy povoleny a je třeba použít CSS.]

      Pokud jsou specifikovány v jednom tagu atributy name a id, řídí se zpracování podle atributu name.

    Pro zobrazení galerie je zapotřebí zadat: [your-txp-site.com/photo/?c=IMAGECATEGORY]