Systemy szablonów - podsumowanie
Nadeszła pora na podsumowanie tematu systemów szablonów. Nie da się ukryć, że większość aktywnych programistów nie widzi już potrzeby korzystania z systemów szablonów. Świadczą o tym wpisy na blogach zagranicznych np. Paul M. Jones czy Hasin Hayder, który nawet napisał swego czasu książkę o Smarty. Warto także dodać, że do powolnego odchodzenia od Smarty (bo to głównie ten system szablonów był używany) znacząco przyczynił się brak nowej wersji, która nota bene właśnie nie dawno wyszła w wersji 3.0 alpha. Spóźnili się jednak o kilka lat. Powinno to wyjść w tym samym czasie co PHP5.
PHP Savant
Po dłuższej przygodzie ze Smarty oraz krótszej z OPT spróbowałem Savant. Jest to system szablonów oparty o natywne PHP, a nie dodatkowy język szablonów, który byłby "kompilowany" do PHP. Moja notka zbiegła się akurat z nową wersją strony Savant i przejęciem projektu przez Brett Bieber o czym można przeczytać na blogu twórcy Savant - Paul M. Jones.
OPT (Open Power Template)
Od dłuższego czasu przymierzałem się do zastąpienia Smarty innym systemem szablonów (głównie z uwagi na brak informacji o przejściu na PHP5). Pobieżnie przejrzałem listę dostępnych systemów w internecie i postanowiłem sprawdzić nasz rodzinny produkt OPT (Open Power Template).
Wyświetlanie zdjęć w kolumnach
Przy galerii zdjęć bardzo często spotykamy się z wyświetlaniem poszczególnych zdjęć w tabeli. Automatyzacja tego zadania odbywa się poprzez wykorzystanie reszty z dzielenia, czyli mówiąc stricte informatycznie - operatora modulo, reprezentowanego w php poprzez znak %.
Smarty - funkcje i modyfikatory
W pewnym momencie korzystania ze smarty dojdziemy do wniosku, że brakuje nam jakieś funkcji czy też modyfikatora. Jeśli rzeczywiście jest nam to niezbędne i mamy zamiar wykorzystywać nową funkcjonalność w kilku miejscach to warto napisać sobie takie rozszerzenie, zwłaszcza, że nie jest to trudne co ma ukazać niniejsza notka.
Smarty, jak ładnie pisać
W moim pojęciu system szablonów (nasze przykłady skupią się na Smarty) sprawdza się do końca tylko wtedy gdy ich budowa jest banalnie prosta (np. nie ma zbyt wielu zagęszczonych warunków if). Dzięki temu zyskujemy dwie rzeczy - przejrzystość, jeśli coś zmieniamy to martwimy się o kod php głównie i tam dokonujemy większość poprawek. W innym przypadku trzeba byłoby się jeszcze zagłębiać w logikę systemu szablonów, co oznacza 2x więcej roboty. Kolejny plus to praca zespołowa, osoba, która tworzy html nie musi być programistą, więc po co ją straszyć jakimiś dziwnymi konstrukcjami.
