Već neko vrijeme se bavim web dizajnom, u početku neusoješno, trenutno malo manje neuspješno, ali eto. Dosta toga sam naučio o html-u i css-u, postavljanju layouta, web standardima itd.
Ono što me sad zanima, a nisam baš našao literaturu na netu jest kako to sve ukomponirati da radi što bolje, da ne zauzima hrpu prostora na disku web hostera i naravno da što jednostavnije omogućuje editiranje sitea.
Recimo da sam napravio neku stranicu, koja ima homepage i još 5 stranica na kojima se nalaze neki članci. Najjednostavnije za to izvest jest da copy pasteam homepage i onda izbrišem ono što mi ne treba i dodam text i multimediu za novu stranicu. Međutim tada se nepotrebno svaki put loadaju neki elementi koji su uvijek prisutni na svim stranicama. Ne znam da li to opterećuje i samog usera jer mora svaki put učitavati jedan te isti sadržaj ili se to pohranjuje u cacheu.
Recimo sada da želim napraviti jedan site sa dosta sadržaja, kao neki poral recimo. U tom slučaju bi gore navedena tehnika bila dosta iscrpna pogotovo vremenski.
Kako npr. na net.hr-u se to riješava. Postoji glavna index str sa headerom, navigacijom, glavnim dijelom sa sadržajem. Kad kliknete na neki članak iz glavnog dijela, otvori se cijeli članak u središnjem dijelu, dok svi ostali elementi ostaju nepromijenjeni. Kako se to postiže?
Nadam se da kužite što želim reći. Još sam neiskusan pa mi nemojte zamjeriti. Dosta sam toga čitao po netu ali nigdje nisu kvalitetno objašnjene ovako neke tehničke stvari.
To je template-ing. Ljudi imaju layout template u koji samo šibaju sadržaj. Naravno, kao korisnik opet moraš dohvatiti cijeli dokument makar si prethodno dohvatio drugi, jer browser ne može vidjeti koji se dio promijenio i dohvatiti samo njega.
Postoje razni načini kako postići to što želiš. Neiskusni stave IFRAME u sredinu layouta pa u njega učitavaju zasebne HTML-ove sa sadržajem. Tako je, naravno, najlakše, jer sve oko IFRAME-a (navigacija, header, footer, sidebar) stoji dok ideš kroz sadržaj, ali ne drži vodu. Druga solucija, ako radiš statičan site u Dreamweaveru, jest da koristiš njegov templating sustav (pročitaj u help-u). Treća solucija su Apache SSI (server-side includes) koje koristiš tako da na svakoj stranici koju poslužuješ include-aš jednaki header/navigaciju/footer koji se nalaze u zasebnom fajlu - mana ove metode je što ne možeš testirati doma u potpunosti bez da vrtiš Apache. Četvrta solucija je neki skriptni jezik poput PHP-a i njegova "include" funkcionalnost - naravno, za to trebaš vrtiti i server i PHP da lokalno testiraš.
Trebaš odlučiti na što ćeš ići - što više funkcionalnosti i fleksibilnosti trebaš to ideš više u skriptne jezike; u suprotnom držiš se Dreamweavera (ako si trenutno u njemu) ili Apache SSI.
Pseudo-kod tvojih stranica sadržaja bi onda mogao izgledati ovako:
nisam radila sa tim CMS-ovima no sigurno moze. za WordPress, npr, cuvas template u jednom fajlu (index.php vjerojatno) i samo moras na prava mjesta ubaciti varijable. na primjeru gotovog template-a se lako nauci.
Svi ce ti sugerirati da koristis SSI (i ja ga koristim u 99% slucajeva), no moje osobno misljenje je da je bolje koristiti iframe, ukoliko imas jednu sredisnju cjelinu koja sadrzi content stranice. Nedostatak iframea je sto je to zapravo frame, a google to bas ne voli.
Drugi nedostatak (naizgled) su fiksne dimenzije iframea, no i to se da nadici sa malo skriptanja. Medjutim, prednosti nad include fileovima je to da nema potrebe za ucitavanjem templatea (skoljke koja sadrzi menu i fiksne dijelove), a i korisnicima je ljepse i ugodnije surfanje po stranicama gdje se ucitavanje vrsi samo u centralnom dijelu.
O prednostima SSI-a ne bih sad duljio jer to ce ti kao sto rekoh mnogi sugerirati.
Na kraju krajeva, sve ima svoje prednosti i mane, stoga eto malo za razmisljanje...
Jel se to može i sa nekim gotovim cms-om kao što je mambo ili joomla?
u cms-ovim imaš više fileova u kojima definiraš izgled pojedinačnih elemenata (glavni layout, članak, anketu....) koje zatim cms slaže.
isto tako možeš i svoj site podijelit.
Moje mišljenje i iskustvo je da iframe nebi trebalo upotrebljavat, osim ako stvarno nemožeš koristit neku serverside tehnologiju (php, asp...), ako se ne možeš snaći dw načinom...
u biti to bi po meni trebala biti zadnja alternativa, a ako progooglaš naći ćeš dosta članaka o tome.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum