Start arrow Programowanie arrow patTemplate arrow patTemplate Przegląd
patTemplate Przegląd Drukuj Wyślij znajomemu

Znaczniki

Poniżej przedstawiamy pięć znaczników xml dostępnych w patTemplate, które umożliwiają budowanie bloków niezbędnych do działania engine’u szat graficznych:

  • znacznik tmpl
  • znacznik sub
  • znacznik link
  • znacznik var
  • znacznik comment

Nazwy znaczników

Wszystkie znaczniki patTemplate muszą zawierać nazwy, które umożliwiają odróżnienie znaczników XML patTemplate od pozostałych znaczników HTML, xHTML i innych znaczników XML. Domyślną nazwą jest patTemplate, ale można ją oczywiście zmieniać, najlepiej z wykorzystaniem metody nazwanej setNamespace.

 
<?php
$tmpl =& new patTemplate();
// zmien przestrzeń nazw na &#8217;cms&#8217;
$tmpl->setNamespace( 'cms' );
?>
<!-- uzyj dowolnej nazwy -->
To jest test zawartosci z mojego systemu CMS.

Typy szablonów

Szablony są to fragmenty kody HTML odpowiedzialne za wygląd i układ treści serwisu. Aby pewnie zidentyfikować część kodu HTML jako szablon graficzny, patTemplate wykorzystuje znaczniki XML, przypisujące do szaty graficznej unikalne nazwy i różne atrybuty.

Podczas analizowania pliku szablonu parser dzieli stronę na kilka obszarów i traktuje je jako oddzielne szablony. Stosując API patTemplate, możesz ukryć, wyświetlać albo powtarzać bieżący szablon.

Szablon graficzny może zawierać tyle szablonów, ile sobie tylko życzysz.

Dysponujesz następującymi, definiowanymi atrybutem type="...", typami szablonów:

  • Standard - na wyjściu szata graficzna jest zawsze taka sama
  • OddEven - możesz przypisać sub-szablony do tego typu: parzysty i nieparzysty [Odd i Even], które będą podmieniane, gdy szablon jest przeładowywany
  • Modulo - jest podobny do typu OddEven z tą małą różnicą, że możesz mieć więcej niż 2 sub-szablony. OddEven jest prostym typem, specjalnym przypadkiem Modulo, kiedy atrybut jest równy 2
  • Condition - możesz przypisać tak wiele szablonów, jak sobie życzysz, ale musisz przypisać jeden, który będzie użyty do porównania określonych warunków sub-szablonów. To pozwoli Ci zdefiniować różny kod HTML dla każdej wartości twojej warunkowej zmiennej, którą możesz mieć. Są dwa specjalne warunki: domyślny (default), który jest podobny do przełącznika switch/case i pusty, który wyświetla się, kiedy nie ma żadnej wartości przypisanej do zmiennej warunkowej
  • SimpleCondition - niekorzystna sytuacja, która często się pojawia podczas powstania błędu, to wyświetlenie komunikatu błędu. Standardowo możesz ustawić komunikat błędu, jeśli jest takowa albo możesz ukryć szablon poprzez użycie setAttribute(), jeśli nie ma odpowiedniej strony błędów. Poprzez zastosowanie szablonu typu SimpleCondition możesz przypisać listę zmiennych, które muszą być ustawione, jeśli szablon ma zostać wyświetlony. Jeśli, któraś z nich nie jest ustawiona, szablon się nie wyświetli.

Zmienne szablonów

PatTemplate wykorzystuje zmienne podobnie do innych języków programowania. Można stosować zmienne lokalne - przypisane za pomocą metody addVar oraz zmienne globalne - przypisane metodą addGlobalVar.

Zmienne globalne mogą być tylko zmiennymi skalarnymi (string, integer ...), a zmienne lokalne mogą być tylko tablicami. Jeśli przypiszesz jakąś tablicę do zmiennej, tam, gdzie wystąpi przypisanie, szablon zostanie powtórzony.

Jeśli warunkowy szablon ma ustawione useglobals="yes", atrybuty globalne zostaną wykorzystane, jeśli nie, żadne lokalne zmienne nie są ustawione.

Zmienne muszą być zapisywane wielkimi literami oraz mogą zawierać tylko znaki alfabetu, cyfry i podkreślenia (_). Zmienne zawsze są zamknięte nawiasami klamrowymi, np. {FOO}.

Podczas przetwarzania szablonu zmienne są zamieniane na reprezentowane przez nie wartości.

Jest kilka predefiniowanych zmiennych systemowych, które są dostępne, kiedy ustawisz atrybut addsystemvars.

  • PAT_ROW_VAR - możesz ją wykorzystać, gdy chcesz ponumerować szablon, który jest automatycznie powtarzany. Po prostu wstaw zmienną PAT_ROW_VAR do swojego szablonu, jeśli chcesz, aby pojawiała się numeracja (może być wykorzystywana przez JavaScript - mouseovers)
  • PAT_LOOPS -
  • PAT_IS_FIRST -
  • PAT_IS_LAST -
  • PAT_IS_ODD -
  • PAT_IS_EVEN ?
  • PATTEMPLATE_VERSION ?
  • PAT_MODULO_REP ?
  • PAT_MODULO -

Atrybuty znaczników

Szablon może mieć wiele różnych atrybutów ustawianych za pomocą setAttribute albo poprzez bezpośrednie wstawienie atrybutu w znacznikach.

Przykłady

Możesz pobrać paczkę patTemplate zawierającą szereg przykładów (aktualnie po niemiecku), które wyjaśnią dokładniej podstawowe funkcje.


Uwagi, źródła

Jeżeli masz sugestie odnośnie treści lub chcesz zgłosić poprawki do tego rozdziału, skomentuj go albo umieść wiadomość na forum: Dokumentacja - Propozycje, zmiany, poprawki

Dziękujemy!

Stefan Wajda, Zespół Dokumentacji PCJ

Tłum. Adam Sobkowicz. Na podstawie: help.joomla.org
GNU/FDL

Zmieniony ( 18.12.2005. )
 
« poprzedni artykuł   następny artykuł »