Jako dugo vremena sam zapostavljao Vesic.org i po pitanju sadržaja a i po pitanju samog html koda koji je prikazivao sajt.
Igrom slučaja (čitaj: razboleo se na odmoru ;)) dobio sam malo vremena koje sam posvetio kompletnoj obnovi sajta; uz Aleckovu pomoć, kompletan HTML kod je prepisan po CSS2 standardima što je sledeći korak daleko olakšalo: upotreba šema (templates).
Ono što je za svaki sajt karakteristično je da sve strane slede neki definisani dizajn, i da se samo radni (obično središnji deo) deo menja u zavisnosti šta je potrebno na toj strani prikazati. Ostatak strane je identičan, do nivoa referenci na ostale objekte (skriptove, css datoteke, slike) koje se menjaju u zavisnosti od “dubine” na kojoj se dotična strana nalazi u strukturi sajta.
Za održavanje tog zajedničkog dela postoje ručni 😉 metod, i metod šema – uz pomoć nekog programa obeležite zajedničke delove strane, markirate ih, a taj program se brine o tome da se pri promeni zajedničkog dela to propagira kroz sve stranice koje koriste tu šemu. U početku, taj posao je obavljao jako dobro Dreamveawer, izuzetno dobar, zahtevan i skup program.
No, kako sam ja programer i daleko lakše koristitim čist tekst editor, a moj provajder Verat u okviru web paketa besplatno omogućava Php i MySQL, ideja se sama nametnula – probati nešto novo. Na savet kolege Marjana, pogledao sam Smarty, odličnu php biblioteku šema: stabilna, dobro urađena i laka za korišćenje. Malo programiranja, malo premeštanja stranica po sajtu, izdvajanja zajedničkih delova (navigacije) za grupe stranica i sada je održavanje sajta milina; dve šeme, header.tpl i footer.tpl i set stranica koje izgledaju otprilike ovako:
< ?php
$selectedLink = 1;
$selectedSubNavLink = 0;
include 'subnav.php';
?>
i to je sve 🙂 subnav.php čuva navigaciju za taj direktorijum a sam sadržaj stranice (centralni deo) je u posebnim datotekama, koje su oslobođenje bilo kakve navigacije i formatiranja (tnx to CSS2 i Aleck :)).
Rezultat je pred vama: mnogo brži sajt (Smarty podržava keširanje jednom izvršene strane), i daleko lakše održavanje sajta (što znači više vremena za kvalitetan sadržaj).