razvoj alata za izradu bloga

Transcription

razvoj alata za izradu bloga
SVEUČILIŠTE U ZAGREBU
FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA
ZAVRŠNI RAD br. 569
RAZVOJ ALATA ZA IZRADU BLOGA
Mario Mustapić
Zagreb, lipanj 2009.
Na drugu stranicu stavite izvornik zadatka završnog rada.
ii
iii
Sadržaj
Uvod ........................................................................................................................................... 1 1. Blog .................................................................................................................................... 2 1.1. 1.2. 1.3. 1.4. 2. Alati za izradu blogova ...................................................................................................... 8 2.1. Blog servisi ......................................................................................................... 9 2.1.2. Samostalna instalacija na unajmljenom web poslužitelju ................................ 10 2.1.3. Odabir naziva domene ...................................................................................... 10 Blogerski servisi ....................................................................................................... 11 2.2.1. Blogger ............................................................................................................. 11 2.2.2. LiveJournal ....................................................................................................... 12 2.3. Alati za samostalnu instalaciju ................................................................................. 13 2.3.1. WordPress ........................................................................................................ 13 2.3.2. ExpressionEngine ............................................................................................. 15 2.3.3. Movable Type .................................................................................................. 16 2.4. Usporedba alata za izradu blogova........................................................................... 17 Uređivanje i održavanje blogova...................................................................................... 19 3.1. 3.2. 4. Izrada blogova ............................................................................................................ 9 2.1.1. 2.2. 3. Razvoj blogova ........................................................................................................... 2 Osnovne karakteristike blogova ................................................................................. 3 Struktura blogova ....................................................................................................... 4 Vrste blogova ............................................................................................................. 7 Uređivanje blogova .................................................................................................. 19 Održavanje blogova.................................................................................................. 23 Studijski slučaj: objektno-orijentirani blog ...................................................................... 26 4.1. 4.2. 4.3. 4.4. Opis aplikacije .......................................................................................................... 26 Opis baze podataka................................................................................................... 28 Programsko rješenje ................................................................................................. 31 Rezultati ................................................................................................................... 38 Zaključak .................................................................................................................................. 41 Literatura .................................................................................................................................. 42 Sažetak ..................................................................................................................................... 44 Summary .................................................................................................................................. 45 Ključne riječi/Keywords .......................................................................................................... 46 iv
Uvod
Današnji web postao je plodno tlo za društvenu interakciju. Jednostavnost i lakoća
pregledavanja weba omogućila su širokoj populaciji, koja možda i nema adekvatno znanje, da
postane prisutna na Internetu i pokrene svoj vlastiti dnevnik, ili neku društvenu aplikaciju.
Sadržaj na Internetu prikazan je s pomoću web stranica i sva interakcija između korisnika i
usluga koje su prisutne na Internetu, uglavnom se odvija pregledavanjem web-sjedišta. U
samom početku Interneta bilo je potrebno određeno znanje za uređivanje i stvaranje webstranica. Razvojem tehnologija za izradu i uređivanje web stranica, danas je omogućeno
običnom korisniku da kreira i uređuje vlastite web stranice bez potrebe za dodatnim znanjem
programskih jezika.
Blog je web stranica koja sadrži kratke, izdvojene informacije koje se nazivaju unosima (engl.
post). Unosi su organizirani u obrnutom kronološkom redoslijedu (najnoviji unos nalazi se na
samom vrhu), i identificirani su jedinstvenom oznakom na koju se mogu pozvati i drugi
blogeri. Blogeri (engl. blogger) osobe su koje uređuju i održavaju blogove. Blog predstavlja
sredstvo komunikacije i trenutno postoji više tematika koje pojedini blogovi obrađuju. Neki
blogovi sadrže samo poveznice na druge blogove, drugi predstavljaju osobne dnevnike, dok
neki donose najnovije informacije iz različitih područja.
Tema ovog rada je razvoj i implementacija aplikacije za samostalno uređivanje i održavanje
bloga korištenjem objektno-orijentirane paradigme. Korištenjem programskog jezika PHP
implementirat će se osnovni koncepti bloga i prikazati će se dobiveni rezultati.
U prvom poglavlju prikazan je povijesni razvoj blogova, opisana su najvažnija svojstva
blogova, prikazana je struktura bloga i navedene su vrste blogova. Drugo poglavlje sadrži
pregled dostupnih alata za izradu blogova, opis njihovih najvažnijih karakteristika i
arhitekture. Na kraju poglavlja prikazana je usporedba obrađenih alata za izradu blogova. U
trećem poglavlju opisan je postupak izrade bloga i navedene su najvažnije značajke kod
pisanja i održavanja blogova. U četvrtom poglavlju obrađen je studijski slučaj. Detaljno je
opisana aplikacija, korištene tehnologije, način rada aplikacije i dobiveni rezultati. Rad
završava zaključkom u kojem je dan osvrt na cjelokupan rad.
1
1. Blog
1.1. Razvoj blogova
Suvremeni blog, kakvog danas poznajemo, potječe od online dnevnika, u kojem su korisnici
putem Interneta objavljivali događaje i detalje iz svog osobnog života. Student Justin Hall
prvi je pokrenuo blog 1994. godine. Skupini korisnika koji su među prvima pokrenuli blogove
pripada i Steve Gibson, kojeg je unajmila tvrtka Ritual Entertainment 1997. godine za
održavanje bloga. Ujedno, smatra se i prvim blogerom koji je zaposlen da radi kao bloger.
Blogovi koji su nastajali u samom početku, tada pod imenom Weblogovi, predstavljali su
jednostavne komponente web stranica koje su se ručno održavale. Međutim, evolucija i razvoj
alata za olakšanu izradu i održavanje web članaka, objavljenih u obrnutom kronološkom
redoslijedu, pojednostavili su sam proces objavljivanja i omogućili pisanje blogova mnogo
većoj, ali tehnički manje obrazovanoj populaciji.
Termin „weblog“ prvi je upotrijebio Jorn Barger krajem 1997. godine. Kraću verziju, „blog“,
koja je danas prisutna na Internetu i mnogo poznatija od izvornog termina, prvi je upotrijebio
Peter Merholz 1999. godine. Prema skraćenoj verziji izvornog termina osoba koja uređuje
blog nazvana je „bloger“.
Iako blog u samom početku bilježi spor razvoj i slab interes kod Internet korisnika, sve veću
popularnost stječe tijekom 1999. godine, kada se gotovo istodobno pojavljuje nekoliko alata
za smještanje blogova:
•
OpenDiary (listopad 1998.) – prvi puta omogućeno je čitateljima da ostave svoj
komentar na pročitani članak ili tekst;
•
LiveJournal (ožujak 1999.) – web sjedište osnovao je poznati bloger Brad Fitzpatrick;
•
Pitas.com (srpanj 1999.) – jednostavna alternativa održavanja stranice s vijestima
unutar web sjedišta, ujedno i prvi besplatan web alat za izradu bloga;
•
Blogger.com (kolovoz 1999.) – danas najpopularniji alat za izradu bloga koji se
temelji na web sučelju;
2
U lipnju 2003. godine Google je objavio program AdSense koji povezuje oglase sa sadržajem
bloga. Oglasi koji se prikazuju na pojedinim stranicama, sastavni su dio svake stranice.
Izvorni blogovi predstavljali su web sjedišta koja su se sastojala pretežno od poveznica na
druge sadržaje. Sastavni dio svakog bloga bili su također i komentari, osobna mišljenja i eseji
u približno podjednakoj zastupljenosti. Najveći problem u samom početku razvoja blogova
predstavljao je nedostatak tehnološke pismenosti. Blogove su kreirale jedino osobe koje su
poznavale tehnologije za izradu web stranica. Urednici blogova, nakon cjelodnevnog
kreiranja komercijalnih web stranica, svoje slobodno vrijeme iskorištavali su za pregledavanje
Interneta i objavljivanje poveznica na najzanimljivije sadržaje. Pojedine poveznice su
najčešće i komentirane od strane samog urednika. Mnogi današnji blogeri zadržali su ovaj stil
uređivanja bloga.
1.2. Osnovne karakteristike blogova
U samom početku razvoja blogova, opcije za uređivanje blogova bile su poprilično
ograničene i blogeri su morali poštivati određene konvencije. S vremenom, alati za izradu
blogova postali su prilagodljivi i omogućili su krajnjem korisniku da izgled bloga prilagodi
svojim potrebama.
Iako blogovi predstavljaju naizgled općenite web stranice, posjeduju nekoliko značajki koje ih
razlikuju od običnih web stranica:
•
sadržaj – blogovi se u pravilu ažuriraju češće od tradicionalnih web stranica, mnogi od
njih i više puta dnevno. Tako privlače posjetitelje da se češće vraćaju. Sadržaj je
uređen i prikazan u obrnutom kronološkom redoslijedu sa posljednje objavljenim
unosom (člankom) na vrhu glavne stranice. Stariji unosi su prikazani prema dnu
stranice;
•
sažetak sadržaja – blog se može pregledati kao i obična web stranica s pomoću web
preglednika, ali za razliku od obične web stranice, blog najčešće pruža mogućnost
pretplate na sažetak sadržaja (engl. feed). Sažetak sadržaja predstavlja nedavno
objavljene članke prikazane u obliku XML datoteke, koji omogućuje čitateljima da
pročitaju objavljene unose s pomoću odgovarajuće aplikacije, bez potrebe za
pregledavanjem samog bloga;
3
•
komunikacija – stil pisanja blogova drugačiji je od ostalih web stranica, potiče se
komunikacija između urednika i čitatelja. Za razliku od informativne web stranice ili
tradicionalne web stranice koja prikazuje novosti, blogovi su pisani tako da blogeri
komuniciraju sa svojim čitateljima, i očekuju se odgovori u obliku komentara.
Komunikacija se ne mora odnositi samo na pojedinačni blog, nego se može odvijati i
između blogova;
Pisanje blogova ima mnogo prednosti naspram uređivanja obične web stranice. Iako većina
blogera piše blogove iz osobnog zadovoljstva, uređivanje blogova možemo promatrati i kroz
druge ciljeve koji nadilaze osobno zadovoljstvo:
•
popularnost – uspješan blog omogućuje blogeru da bude lakše primijećen. Također,
pomaže i u izgradnji prepoznatljivog profila, koji može uvelike pomoći na poslovnom
tržištu i promovirati određeni proizvod ili uslugu;
•
kontakti – blogovi su izvrstan način za upoznavanje novih ljudi. Dobro posjećen blog
omogućuje blogeru kontakte s raznim ljudima;
•
tržište – privlačenje određenog tipa posjetitelja može predstavljati veliki problem,
posebno ako postoje proizvodi i usluge koji se nastoje prodati. Blogovi privlače veliki
broj posjetitelja, i tako otvaraju nova tržišta koja posjećuju isključivo posjetitelji
zainteresirani za tematiku koju blog promovira;
•
prodaja – osim što blogovi privlače pozornost i stječu uglavnom stalne čitatelje, s
vremenom se putem članaka koji se objavljuju može izgraditi povjerenje i
vjerodostojnost koji su ključni za ostvarenje prodaje.
1.3. Struktura blogova
Iako se blogovi prikazuju pomoću web stranica, većina blogova posjeduje skup značajki koji
ih razlikuje od drugih vrsta web sjedišta. Općenita web stranica sastoji se od nekoliko
neizostavnih elemenata i prikazana je na slici (Sl. 1.1). Unutar web stranice moguće je
navigaciju smjestiti između zaglavlja i sadržaja stranice, i unutar sadržaja stranice (s lijeve ili
desne strane sadržajnog dijela).
4
ZAGLAVLJE
NAVIGACIJA
NAVIGACIJA
SADRŽAJ STRANICE
PODNOŽJE
Sl. 1.1 Struktura općenite web stranice
Tipični elementi od kojih se blog sastoji su:
•
istaknuti unosi sadržaja – prikazani u kronološkom redoslijedu (najnoviji unosi su na
vrhu), uz svaki unos prikazan je stalni URL 1 (engl. permanent link). Pohranjivanjem
stalnih URL-ova pojedinih unosa potiče se ostale blogere da objavljuju poveznice na
objavljene članke. Autor objavljenog članka, datum i kategorija kojoj članak pripada
prikazuju se zajedno s pojedinim člankom;
•
komentari čitatelja – dio bloga koji omogućava interakciju između blogera i čitatelja.
Pomoću komentara potiče se rasprava o temi koja je obrađena tekstom, ali može
također poticati komunikaciju između blogera i čitatelja;
•
pretplata na sadržaj (engl. Really Simple Syndication – RSS) – omogućava čitateljima
da se pretplate na blog i automatski budu obaviješteni čim se ažurira sadržaj bloga.
Korištenjem pretplate na sadržaj može se znatno povećati broj čitatelja;
1
URL (engl. Uniform Resource Locator) – Web adresa određenog resursa na Internetu
5
•
arhiva objavljenih unosa – unosi se arhiviraju ovisno o tematici koju obrađuju.
Blogovi koji imaju tisuće unosa sadrže arhive koje su organizirane prema mjesecima,
godinama i ključnim riječima. Sve navedene arhive automatski stvara blog aplikacija.
Čitatelji mogu također koristiti i opciju pretraživanja radi lakšeg pronalaska unosa koji
obrađuje traženu tematiku.
Iako sve navedene značajke mogu biti ugrađene i u konvencionalne web stranice, blog sustavi
se grade s određenom svrhom. Veliku dobit prilikom korištenja specijaliziranih blog
aplikacija predstavlja činjenica da je aplikacija za izradu bloga jeftina i posebno dizajnirana
na način da omogući običnim korisnicima, koji nemaju znanja programiranja, da iskoriste sve
mogućnosti i značajke blogova.
Na slici (Sl. 1.2) prikazan je primjer bloga s označenim karakterističnim elementima.
Sl. 1.2 Blog sa označenim karakterističnim elementima
6
1.4. Vrste blogova
U početku razvoja blogova, blogeri su kreirali isključivo osobne blogove koji su prikazivali
njihove interese i sadržaje koje su prikupljali tijekom pregledavanja weba. Ovakvi blogovi
obrađivali su razne teme, koje često nisu imale dodirnih točaka, a mnogi blogovi djelovali su
kao online časopisi i obrađivali su osobnu tematiku. S druge strane postojali su blogovi koji
su obrađivali teme od profesionalnog interesa za njihovog autora.
Mnoge tvrtke i druge organizacije otkrili su da im blogovi mogu pomoći u ostvarenju njihovih
internih ciljeva i potaknuti komunikaciju s potencijalnim klijentima. Iako su velike tvrtke u
početku koristile sustave za samostalno uređivanje vlastitih web sjedišta (engl. Content
Management System – CMS), koji su često predstavljali teško za učenje i skupo rješenje,
pojavom blogova omogućeno je jednostavno uređivanje i održavanje web stranica, bez
potrebe za znanjem HTML-a 2 .
Blogovi se danas koriste u razne svrhe i obrađuju razne tematike, stoga je teško odrediti koje
su sve vrste blogove prisutne na Internetu i koja područja objavljeni članci obrađuju. S
obzirom na namjenu blogovi se mogu podijeliti na:
•
osobne – prikazuju osobne informacije i detalje iz života autora. Ujedno, obrađuju
tematiku koja je usko povezana uz područje interesa blogera;
•
poslovne – mogu se dodatno podijeliti na:
o blogove tvrtki (engl. Company Blogs) – sadrže općenite informacije o
poslovnoj orijentaciji tvrtke, kao i osvježene novosti. Sadržaj je ograničen
samo na informacije o tvrtki;
o blogove proizvoda – promoviraju proizvod ili uslugu. Primarna uloga ove vrste
blogova je promocija i prodaja proizvoda;
•
informativne – sadrže informacije o postojećim i novim tehnologijama, kao i drugim
znanstvenim područjima. Mogu poslužiti kao sredstvo učenja;
•
tematske – blogovi koji prikazuju sadržaj o određenoj temi. Primjer ove vrste blogova
su politički, glazbeni, obrazovni, modni ili pravni blogovi. Blogovi koji se koriste u
svrhu spama, poznatiji su pod imenom Splog;
2
HTML (engl. HyperText Markup Language) – prezentacijski jezik za kreiranje web stranica
7
2. Alati za izradu blogova
Internet pruža nebrojeno mogućnosti kada je riječ o izboru alata za izradu blogova. Neki od
dostupnih alata su slični, ali mnogi od njih imaju svoje prednosti i nedostatke. Određeni alati
omogućuju vrlo brz i jednostavan početak uređivanja bloga, dok drugi zahtijevaju
konfiguraciju i dodatno postavljanje prije samog početka pisanja članaka. Odabir alata
najčešće određuje mogućnosti koje su nam dostupne za izmjenu ili nadograđivanje blogova.
Određeni problemi nastaju kada alat koji se koristi nije u mogućnosti ispuniti naša očekivanja
i potrebe koje su najčešće posljedica Web 2.0 3 zahtjeva. Zbog nekompatibilnosti između
različitih alata ovaj problem može predstavljati veliku prepreku prilikom promjene na drugi
blog alat koji zadovoljava naše potrebe. Stoga, vrlo je važno na samom početku dobro istražiti
mogućnosti pojedinih alata, i opredijeliti sa za odgovarajući alat za izradu bloga.
Ideja koja stoji iza blogova vrlo je jednostavna. Aplikacija za uređivanje blogova omogućuje
rad u poznatom i korisnički orijentiranom okruženju, dok se u isto vrijeme u pozadini, tekst,
slike i poveznice koje se uređuju, formatiraju i spremaju prema pretpostavljenom predlošku u
obliku web stranice. Ova značajka omogućava da se u isto vrijeme može pregledavati web i
unositi novi sadržaj u blog.
Većina blog aplikacija odvaja izgled od funkcionalnosti bloga, pružanjem određenih obrazaca
za unos i pohranu predložaka. Nakon početnog pohranjivanja predloška, kojim je definiran
izgled bloga, bloger se ne mora više brinuti o rasporedu elemenata. Nakon unosa novog
članka, blog aplikacija povezuje pohranjeni predložak s unesenim tekstom i prikazuje ih u
obliku web stranice.
Trenutno na Internetu postoji mnogo alata za izradu bloga kao što su: WordPress, Textpattern,
ExpressionEngine, Movable Type, TypePad, Blogger i LiveJournal. Neki od ovih alata
predstavljaju blog servise, dok drugi predstavljaju alate za samostalnu instalaciju na web
poslužitelj.
3
Web 2.0 – druga generacija Weba, bazirana na društvenoj interakciji koja omogućuje korisnicima sudjelovanje
u kreiranju sadržaja web stranica.
8
2.1. Izrada blogova
Kao i kod bilo koje druge važne odluke, potrebno je izdvojiti vrijeme za odabir platforme za
izradu bloga. Trenutno postoji više konkurentskih blog alata, koji se razlikuju po svojim
mogućnostima, složenosti, cijeni i popularnosti. Blogger predstavlja jednu od najpopularnijih
platformi. Izgled početne stranice Blogger servisa prikazan je slikom (Sl. 2.1).
Iako postoji mogućnost promjene blog platforme i naknadno, i mnogi alati pružaju podršku za
premještanje sadržaja, najčešće se radi o tehnički složenim izazovima koji potencijalno
uključuju i određene troškove. Stoga je važno prije odabira alata za izradu bloga uzeti u obzir
proračun koji se ima na raspolaganju, ciljeve i vlastitu tehničku osposobljenost. Postoje
servisi i blog alati koji omogućuju jednostavno postavljanje i pokretanje blogova.
Sl. 2.1 Blogger je jedan od najpopularnijih alata za početnike
Postoje dvije vrste blog platformi: aplikacije koje se samostalno instaliraju i smještaju na
unajmljeni web poslužitelj i web servisi koji izvršavaju sve potrebne radnje.
2.1.1.
Blog servisi
Blog servisi predstavljaju vrstu alata koja je možda najbolja za početnike zbog svoje
jednostavnosti, brzine i činjenice da je besplatan. Najpoznatiji servisi koji pružaju ovu vrste
usluge su WordPress i Blogger, i potpuno su besplatni. Blog servisi se nazivaju domaćinima
9
blogova koje korisnici stvaraju zato što smještaju kreirane blogove unutar svoje domene.
Nakon relativno jednostavnog postupka izrade bloga, kreira se web adresa, koja je sastavljena
od kombinacije URL servisa i imena bloga.
Prednosti blog servisa su: brzo i jednostavno postavljanje, automatsko ažuriranje,
jednostavno korištenje, ne zahtijevaju plaćanje pristojbi, povezanost sa web sjedištima koji su
posjećeni i prijavljeni na web tražilice.
Nedostaci blog servisa su: ograničenost podrazumijevanim izgledom, ograničeno
podešavanje, generički URL, zahtjevno nadograđivanje.
2.1.2.
Samostalna instalacija na unajmljenom web poslužitelju
Drugu vrstu platforme predstavljaju blog alati koji se samostalno preuzimaju s Interneta,
instaliraju i smještaju na unajmljene web poslužitelje. Iako postoje određene prednosti i
nedostaci i jedne i druge vrste platformi, preporuča se korištenje samostalne instalacije zbog
veće kontrole nad blogom.
Prednosti samostalne instalacije su: potpuna kontrola, prilagodljivost, korištenje besplatnih
alata za izradu bloga, vlastita domena.
Nedostaci samostalne instalacije su: trošak, složena instalacija i postavljanje, složena
nadogradnja, potencijalni problemi sa unajmljenim web poslužiteljem.
2.1.3.
Odabir naziva domene
Posjedovanje vlastite domene značajka je profesionalnih blogera i poželjno je iz više razloga.
Vlastita domena može značajno pridonijeti izgradnji vjerodostojnosti i stvaranju
profesionalnog okružja oko bloga. Slično tome, pažljivo odabrane domene imaju sposobnost
privlačenja posjetitelja i povećavaju pamtljivost imena proizvoda, usluga ili čak i osoba.
Prilikom odabira imena domena potrebno je uzeti u obzir nekoliko najvažnijih kriterija:
•
Tema bloga – poželjno je da ime domene odražava tematiku koju blog obrađuje. Ovaj
kriterij najčešće nije jednostavno ispuniti.
•
Duljina imena – iako se mogu koristiti duga imena koja se smatraju ispravnim, smatra
se da je pametnije koristiti kratka imena koja su lako pamtljiva.
•
Završetak domene – smatra se da je prilikom odabira vrlo važan i završetak domene,
dio koji slijedi iza „točke“. Slova koja označavaju kraj imena domene nazivaju se
10
vršnim domenama (engl. Top Level Domain – TLD) i podijeljena su u dvije kategorije
– državne vršne domene (cTLD) i generičke vršne domene (gTLD). Postoje različiti
pristupi odabira TLD-a. Ako se ne cilja na posjetitelje iz određene zemlju (npr. „.hr“
za posjetitelje iz Hrvatske), odabire se najčešće „.com“ domena.
•
Korištenje brojeva – zbog velikog broja registriranih domena, postoji mogućnost da se
ne pronađe željena domena. Pritom se mogu koristiti i brojevi unutar naziva domena,
ako su povezani sa tematikom koja se obrađuje.
•
Korištenje crtica – u nazivima domena crtice se najčešće koriste zbog nedostupnosti
željene domene, s druge strance crtice mogu biti vrlo korisne kod optimizacije za web
tražilice.
Nakon odabira odgovarajućeg imena, koje ispunjava neke od navedenih kriterija, potrebno je
registrirati domenu putem nekog od dostupnih web servisa na Internetu.
2.2. Blogerski servisi
2.2.1.
Blogger
Blogger je jedan od najpopularnijih blog servisa, posebno za korisnike koji tek započinju
izrađivati blogove. Ovaj alat predstavlja jednostavan sučelje za pisanje blogova u obliku
dnevnika. Iako nudi mnogo manje opcija za uređivanje i prilagođavanje potrebama korisnika,
činjenica da je ovaj alat jako popularan omogućuje mu veliku podršku i dostupnost za razne
predloške, dodatke i widgete pomoću kojih se može Blogger iskoristiti za pristup raznim
servisima i uslugama.
Blogger se razlikuje od drugih alata u načinu na koji sprema objavljene članke. Drugi blog
alati prilikom posjete novog čitatelja, dohvaćaju podatke iz baze podataka i iznova kreiraju
blog stranicu korištenjem odabranog predloška. S druge strane, Blogger prilikom dodavanja
novog članka prepiše postojeću HTML stranicu s novim sadržajem. Iako ovaj postupak
zahtijeva mnogo više vremena za ažuriranje, može značajno pridonijeti brzini učitavanja web
stranice.
Najvažnije prednosti servisa Blogger su:
11
•
Integracija s mnogim alatima – zbog svoje velike popularnosti, postoje razne
aplikacije za različite operacijske sustave koje omogućuju uređivanje blogova sa radne
površine osobnog računala.
•
Uređivanje – korištenjem ikone „Quick Editinig“ omogućeno je brže i jednostavnije
dodavanje novog sadržaja.
•
Različiti autori – Blogger omogućava uređivanje blogova od strane više korisnika, od
kojih svaki mora imati korisničke podatke za pristup Google web stranicama. Također
mora se omogućiti pristup svakom novom korisniku putem administrativnog sučelja.
•
Uređivanje predložaka – za razliku od početnih verzija Blogger, nove verzije
omogućuju lakše uređivanje predložaka, bez potrebe za dodatnim znanjem
programskih naredbi i HTML oznaka.
•
Integracija sa Google AdSense servisom – svaki blog omogućava dodavanje Google
reklamnih tekstova, ali za razliku od drugih blog alata, Blogger sadrži sučelje za
pristup statistici i drugim korisnim informacijama.
Iako servis Blogger posjeduje korisne značajke, postoji i nekoliko nedostataka:
•
Napredne postavke – za razliku od ostalih blog alata koji posjeduju mnogo korisnih
značajki za profesionalne korisnike, Blogger ne sadrži opcije za napredno upravljanje
blogom.
•
Upravljanje widgetima – dodavanje novih dodataka i widgeta može ponekad biti
zahtjevan posao.
•
Prikaz postova – na glavnoj stranici prikazuju se cijeli postovi, što može predstavljati
nedostatak ukoliko se redi o dugim člancima.
•
Opterećenost poslužitelja – zbog prevelikog broja korisnika, web stranice blogova
mogu se dugo učitavati.
2.2.2.
LiveJournal
LiveJournal je virtualna zajednica gdje korisnici Interneta mogu voditi svoje blogove, online
časopise ili dnevnike. LiveJournal je ujedno i naziv alata koji je dizajniran za upravljanje i
korištenje LiveJournal virtualne zajednice. Ovaj alat posjeduje značajke društvenih mreža
koje su slične drugim web sjedištima za društvenu interakciju između korisnika. Brad
12
Fitzpatrick je započeo s izradom ovog alata 1999. godine. Prvotna namjena ovog alata bila je
informiranje prijatelja o trenutnim aktivnostima.
LiveJournal omogućuje dodavanje stranica koje sadrže informacije o nedavnim aktivnostima
drugih LiveJournal korisnika. Korisnici koji posjeduju komercijalne verzije ovog blog alata
mogu koristiti dodatne pogodnosti poput naprednog učitavanja slika, brzog pristupa i pisanja
članaka putem elektroničke pošte ili mobilnog uređaja.
Korisne značajke blog servisa LiveJournal su:
•
Stvaranje online zajednica – LiveJournal je alat koji omogućuje interakciju unutar
određene zajednice i formiranje mreže „prijatelja“.
•
„Popis prijatelja“ – ovo je najvažnija prednost LiveJournal alata, koja postojećem
blog servisu pruža društvenu značajku. Svaki korisnik ima „prijatelj“ stranicu, koja
prikuplja najnovije blog zapise od korisnika koji se nalaze na popisu prijatelja.
•
„Glasovni postovi“ – korisnici koji koriste komercijalnu verziju ovog alata mogu
putem telefonsko poziva unijeti novi članak u svoj blog.
Uz vrlo korisne prednosti ovog servisa, važno je istaknuti i nekoliko nedostataka:
•
Sustav za upravljanje predlošcima – pojedini predlošci mogu biti zahtjevni za
postavljanje ne samo običnom korisniku, nego i naprednijim korisnicima koji
posjeduju znanja programiranja.
•
Upravljanje postavkama – relativno komplicirano sučelje za prilagođavanje bloga
vlastitim potrebama.
2.3. Alati za samostalnu instalaciju
2.3.1.
WordPress
Zadnjih nekoliko godina WordPress postao je iznimno popularan alat za izradu i pisanje
članaka. WordPress nudi alat koji se može samostalno instalirati, s naglaskom na osnovne
značajke blogova – upravljanje temama, registraciju novih korisnika, komentare itd. Ovaj alat
za izradu blogova izgrađen je pod GPL 4 licencom, i na taj način omogućeno je velikom broju
4
GPL (engl. General Public License) – dozvola za slobodno korištenje programskih aplikacija
13
korisnika da svojim radom te pisanjem tema i dodataka još više unaprijede WordPress. Prije
instalacije i pokretanja ovog alata potrebno je osigurati unajmljeni web prostor koji podržava
PHP programski jezik i MySQL bazu podataka. Ako su navedeni uvjeti osigurani, sa web
adrese WordPress.org, može se preuzeti instalirati najnovija programska inačica.
Prednosti WordPress alata za izradu bloga su:
•
Vlastita domena – za razliku od blog servisa, WordPress najčešće zahtijeva
unajmljivanje web prostora i registraciju vlastite domene. Samim tim osigurava se
jedinstvenost i vjerodostojnost što može značajno pridonijeti popularnosti bloga.
•
Jednostavna instalacija i sučelje – WordPress je jednostavno instalirati, ako
poznajemo korisničke podatke za pristupanje unajmljenom web poslužitelju i MySQL
bazi podataka. Nakon instalacije, pristupa se sučelje za uređivanje i održavanje bloga,
koje je vrlo jednostavno i prilagođeno krajnjem korisniku.
•
Podrška registraciji novih korisnika – WordPress može predstavljati alat kojim
upravlja više korisnika. Proces registracije i prijave vrlo je jednostavan i obični
korisnici mogu se unaprijediti do statusa administratora.
•
Alat za dodavanje novih stranica – za razliku od ostalih alata, WordPress pruža
podršku za uređivanje i dodavanje „statičnih“ web stranica. Unutar dostupnog sučelja
moguće je uređivati dodatne stranice o proizvodima, uslugama ili neke druge stranice
koje se žele uključiti u blog. Također je moguće dozvoliti komentare u tim stranicama.
•
Dodaci i widgeti – WordPress nudi podršku za dodatke koji su izgrađeni od treće
strane. Dodacima se pristupa putem administrativnog sučelja. Widgeti su dostupni za
pojedine WordPress predloške i mogu značajno olakšati dodavanje novih predmeta u
izbornik sa strane.
WordPress alat posjeduje i nekoliko nedostataka:
•
Višestruki blogovi – WordPress ne pruža podršku za više blogova u jednoj instalaciji,
što može biti vrlo korisno većim zajednicama koje žele omogućiti svojim korisnicima
da kreiraju i uređuju vlastite blogove.
•
Zahtjevnost dodataka – neki WordPress dodaci zahtijevaju mnogo resursa za svoje
izvršavanje, čime se troše fizički resursi web poslužitelja što može uzrokovati sporo
učitavanje blogova.
14
•
Sigurnost – postoje određeni sigurnosni problemi zbog oslanjanja na programski jezik
PHP, ali za razliku od drugih blog alata, WordPress predstavlja jedno od sigurnijih
rješenja. Zapravo, sve PHP skripte predstavljaju potencijalni sigurnosni problem zato
što se oslanjanju na bazu podataka koja je ranjiva.
2.3.2.
ExpressionEngine
ExpressionEngine je blog alat koji je namijenjen uglavnom za web dizajnere. Sa naglaskom
na potpuno prilagodljive predloške, korisnici sa znanjem HTML-a mogu izraditi blog koji je
potpuno drugačiji od ostalih, pritom ne ograničavajući se na klasičan dizajn koji se sastoji od
dva ili tri dijela. Budući da je ExpressionEngine komercijalan alat, postoji mali razvojni tim
koji unaprjeđuje funkcionalnost alata.
ExpressionEngine sadrži mnogo korisnih značajki koje se mogu dodatno proširiti korištenjem
dodataka i modula, koji su uglavnom komercijalni. Iako ExpressionEngine posjeduje
arhitekturu koja mu omogućuje proširenje funkcionalnosti pomoću novih modula i dodataka,
zajednica programera koji razvijaju nove dodatke relativno je ograničena na mali broj
korisnika, za razliku od WordPress alata, koji ima na raspolaganju mnogo više dodataka.
ExpressionEngine koristi programski jezik PHP i MySQL bazu podataka, kao i WordPress
alat.
Prednosti ExpressionEngine alata za izradu bloga su:
•
Modularan pristup – ExpressionEngine podržava dodavanje novih modula, kao što su
forumi, foto galerije, moduli za online poslovanje itd. Moduli koji nude osnovnu
funkcionalnost i jednostavna poboljšanja, također su podržani.
•
Višestruki blogovi – Za razliku od WordPress alata, moguće je izgraditi više različitih
blogova unutar jedne instalacije. Moguće je imati blogove koji obrađuju različitu
tematiku, kao i blogove koje uređuju jedan ili skupina korisnika.
•
Prilagodljiv sustav predložaka – moguće je stvaranje vlastitih predložaka za prikaz
elemenata korištenjem posebnih ExpressionEngine oznaka ili HTML oznaka. Sustav
predložaka može se koristiti za integraciju „statičnog“ i blog sadržaja, a samim tim i
izgrađivanje cjelokupnog web sjedišta.
15
•
Mailing liste – komercijalne verzije sadrže i upravitelj mailing listama koji omogućava
korisnicima da se prijave ukoliko žele primati obavijesti i druge materijale na adresu
elektroničke pošte.
•
Statistike – ExpressionEngine sadrži alat za prikaz statistika o blogu, poput broja
posjetitelja, najposjećenijih stranica, najpopularnijih članaka itd. Kod održavanja veće
blog zajednice, ove statistike mogu biti vrlo korisne.
•
Uređivanje slika – ExpressionEngine omogućuje mijenjanje veličine slike i stvaranje
malih slika prilikom učitavanja. Komercijalna verzija sadrži podršku za izradu foto
galerija s opisima i komentarima posjetitelja.
Iako ExpressionEngine posjeduje korisne značajke, postoji i nekoliko nedostataka:
•
Komercijalni dodaci – svi dodaci i moduli koji se naknadno instaliraju su uglavnom
komercijalni i potrebno je kupiti licencu za njihovu instalaciju.
•
Ograničen broj predložaka – broj predložaka koji dolaze instalirani s ovim alatom je
vrlo ograničen. Iako postoje web stranice za preuzimanje predložaka, sam proces
instalacije može ponekad biti vrlo zahtjevan.
2.3.3.
Movable Type
Movable Type se počinje razvijati 2001. godine kao osobni projekt Benjamina i Mene Trott.
Jedan od glavnih razloga velike popularnosti ovog alata je njegova prilagodljivost. U vrijeme
kada se Movable Type počeo razvijati većina popularnih blog alata bili su blog servisi, koji su
bili jednostavni za postavljanje, ali nisu podržavali mogućnost naprednog postavljanja.
Movable Type bio je kompliciraniji za korištenje, ali je pružao korisnicima veću kontrolu nad
web stranicama. S osnovnim znanjem HTML-a podrazumijevani predlošci mogli su se vrlo
lako prilagoditi, ili su se mogli kreirati vlastiti. Samim tim omogućeno je stvaranje
jedinstvenih i prepoznatljivih stranica.
Movable Type izgrađen je korištenjem programskog jezika Perl. Jedna od najvažnijih
značajki ovog alata, njegova je arhitektura koja omogućava korisnicima da razvijaju vlastite
dodatke koji nadograđuju osnovnu funkcionalnost. Trenutno postoji velika i aktivna zajednica
korisnika ovog alata kao i brojne stranice koje mogu biti vrlo korisne početnicima.
Iako je u početku Movable Type bio besplatan, od verzije 3.0 počinju se naplaćivati licence za
korištenje ovog alata. I dalje postoji besplatna verzija, koja se može slobodno preuzeti, ali je
16
ograničena na jednog korisnika i tri bloga. Iako su ograničenja besplatne verzije prihvatljiva
širem krugu korisnika, ukoliko postoje složeniji zahtjevi, cijena osnovne licence je relativno
prihvatljiva i uključuje tehničku podršku.
Najvažnije prednosti Movable Type alata za izradu bloga su:
•
Višestruki blogovi – za razliku od WordPress alata, Movable Type pruža podrška za
upravljanje različitih blogova koji su kreirani unutar iste instalacije. Razmjena
informacija između različitih blogova i unaprjeđivanje vrlo je jednostavno.
•
Održavanje – pronalaženje i uređivanje predložaka vrlo je jednostavno, kao i
postavljanje modula bilo gdje na web stranicu. Movable Type pruža izvrsne
mogućnosti za napredno postavljanje.
•
Jednostavnost korištenja – vrlo dobar dizajn i korisničko sučelje omogućuju
korisnicima da vrlo jednostavno izvršavaju svoje svakodnevne radnje, poput pisanja
novih članaka.
•
Dodaci – Movable Type omogućuje korisnicima da pomoću velikog izbora dodataka
prilagode blogove svojim potrebama i prošire funkcionalnost samog alata.
Nedostaci Movable Type alata za izradu bloga su:
•
Ograničenja besplatne verzije – iako je Movable type komercijalan alat, postoji i
besplatna verzija, čije mogućnosti su poprilično ograničene.
•
Tehnička podrška – besplatne verzije ne uključuju tehničku podršku, koja je dostupna
isključivo korisnicima koji posjeduju licencirane verzije ovog alata.
2.4. Usporedba alata za izradu blogova
U prethodnim poglavljima opisani su neki od najpopularnijih alata za izradu blogova. Pritom
su promatrane njihove najvažnije osobine i značajke koje ih razlikuju od drugih alata. U ovom
poglavlju prikazana je tablica (Tablica 2.1) u kojoj su istaknute najvažnije osobine blogova.
Za pojedini alat u tablici označene su značajke koje posjeduje i pomoću pozitivnih i
negativnih ocjena označena je razina iskoristivosti samog alata.
S obzirom da su neki alati besplatni, prilikom usporedbe nije uzet u obzir faktor cijene, već su
svi alati promatrani ravnopravno, odnosno kao da su besplatni.
17
Blogger LiveJournal WordPress ExpressionEngine Movable Type Tablica 2.1 Usporedba opisanih blog alata
Jednokratna naknada - - - $0‐$99+ $0‐$49+ Mjesečna naknada - $0‐$3 - $0‐$3 - Blog servis ili Instalacija BS BS I I I Jednostavnost korištenja + - +/- +/- - Podešavanje bez kodiranja + - +/- - - Napredno podešavanje + +/- + + + Dodavanje novih unosa +/- +/- +/- +/- - Upotrebljivost za čitatelja +/- +/- +/- + +/- Sigurnost i podrška +/- +/- +/- +/- + Kategorije Odlomci • JavaScript podrška • • • • • • • • • Ako se blog koristi za osobnu zabavu ili vođenje osobnog dnevnika preporuča se korištenje
besplatnih servisa. S druga strane ako se želi razvijati ozbiljan blog i postoje ambicije za
profesionalno korištenje bloga (u svrhu stvaranja prepoznatljivog imena, ili zarađivanja putem
oglašavanja) preporuča se korištenje alata za samostalnu instalaciju na unajmljenom web
poslužitelju.
Na hrvatskom tržištu postoji nekoliko blog servisa koji su uglavnom besplatni i koji posjeduju
približno jednaku funkcionalnost. Najpopularniji blog servisi su:
•
Bloger.hr,
•
Blog.hr,
•
MojBlog.hr.
18
3. Uređivanje i održavanje blogova
Prije samog početka pisanja blogova potrebno je izvršiti određene radnje koje su neophodne
za izradu, a potom i uređivanje te održavanje blogova. Odabir platforme i alata za izradu
bloga te odabir imena domene, samo su neke od radnji za koje treba izdvojiti izvjesno
vrijeme. Kvalitetno pisanje i uređivanje postova, te održavanje samog bloga, značajke su koje
pridonose kvaliteti bloga i stvaranju prepoznatljivog imena.
3.1. Uređivanje blogova
Sadržaj bloga predstavlja najvažniji element koji čini blog uspješnim i privlači veliki broj
čitatelja. Teško je definirati dobar sadržaj i to je najčešće subjektivna stvar koja je različita za
svaku osobu i ovisi o osobnim potrebama i tematici o kojoj se piše. Prilikom pisanja i
uređivanja blogova potrebno je razmotriti nekoliko osnovnih značajki koje mogu pridonijeti
kvaliteti objavljenog sadržaja, a samim tim i uspješnosti cjelokupnog bloga. U nastavku su
navedene osnovne značajke koje čine blogove uspješnim i pridonose stvaranju kvalitetnog
sadržaja.
Korisnost i jedinstvenost
Prilikom odabira tematike koja će se obrađivati objavljenim člancima potrebno je razmotriti
koliko je sadržaj koristan čitateljima. Iako je „koristan sadržaj“ različit za svaku osobu, može
se razmatrati kroz nekoliko područja:
•
zabava – blogovi se koriste za zabavu. Čitatelji se neprestano vraćaju radi šaljivih
dosjetki, zanimljivih razgovora i ostalih zabavnih sadržaja.
•
Obrazovanje – pojedini čitatelji blogova prvenstveno su zainteresirani za učenje o
određenoj tematici koju blog obrađuje.
•
Novosti – mnogi čitatelji blogova jednostavno žele biti u korak s najnovijim vijestima
o nekoj tematici.
•
Zajednica – neki blogovi su izgrađeni na temelju ljudske potrebe da pripadaju nekoj
zajednici. Glavni zadatak ovakvih blogova povezivanje je ljudi koji su zainteresirani
19
za temu koju blog obrađuje. Vrlo često tema je sekundarna naspram odnosa koji je
izgrađen između posjetitelja bloga.
Svaki blog ima potencijal da bude koristan na svoj način. Ono što čini blog korisnim
zasigurno nisu različiti članci koji nastoje objediniti više područja u jedno, iako postoje neki
blogovi koji obrađuju različite tematike.
Većina blogova uglavnom prikazuje sadržaj na sličan način. Jedinstvenost bloga i tematike
koju obrađuje nije jednostavno ostvariti. Potrebno je istraživati i pregledavati postojeće
sadržaje na webu i pokušati se izdvojiti od ostalih i ponuditi sadržaj na način koji nije prisutan
na ostalim blog stranicama.
Uočljiv sadržaj
Web korisnici se ne zadržavaju dugo na stranicama i često sadržaj brzo pregledavaju. Umjesto
da čitaju cijele članke, korisnici radije brzo pregledavaju sadržaj u potrazi za ključni riječima i
izrazima. Kao posljedica toga, javlja se potreba za primjenjivanjem određenih tehnika pisanja
sadržaja kako bi se čitateljima omogućilo lakše pronalaženje traženih informacija:
•
liste – dugi eseji su teški za čitanje i zahtijevaju veliku koncentraciju kod čitatelja.
Prikazivanjem članka u obliku liste, mnogo je učinkovitije od klasičnog esejskog
oblika.
•
Formatiranje – koriste se sljedeće tehnike oblikovanja riječi: podebljane riječi,
VELIKA slova, podcrtane riječi i kurziv. Također poželjno je promijeniti vrstu,
veličinu i boju slova ako se žele istaknuti određene riječi.
•
Naslovi – korištenje naslova pridonosi definiranju strukture članka, ali naslovi također
mogu biti vrlo korisni čitateljima za pronalazak informacije ili dijela članka koji ih
više interesira.
•
Slike – pametnim korištenjem slika unutar objavljenih članaka može se privući
pozornost čitatelja, odnosno mogu se istaknuti određene točke. Slike su posebno
učinkovite na samom vrhu članka, jer potiču interes kod čitatelja.
•
Obrubi – definiranje obruba oko citata ili programskog koda može biti vrlo korisno za
privlačenje pažnje kod čitatelja.
•
Praznine – korištenjem praznina moguće je privući pažnju čitatelja na određeni dio
članka koji može sadržavati korisne informacije.
20
•
Kratki odlomci – razdvajanjem velikih odlomaka teksta na više manjih dijelova,
olakšavamo čitateljima pregledavanje članaka.
Korištenjem navedenih tehnika i najduži članci mogu biti vrlo jednostavni za pregledavanje.
Privlačni naslovi
Naslovi su jako važni prilikom pisanja članaka. Ukoliko je naslov zanimljiv i privlačan, može
privući čitatelja, u suprotnom, nezanimljivi naslovi često su glavni uzrok loše posjećenosti
blogova. Postoji mnogo strategija o tome kako odabrati dobar naslov i privući čitatelja, neke
od njih su navedene u nastavku:
•
Jednostavni naslovi – prema [1] većina istraživanja pokazala je da su najučinkovitiji
naslovi jednostavni, kratki i laki za razumijevanje. Kratki naslovi su također dobri za
tražilice – definiranjem naslova sa 40 ili manje slova, može se osigurati da se cijeli
naslov pojavi u rezultatima pretraživanja Google tražilice.
•
Naslovi koji privlače pozornost – dobri naslovi izdvajaju se od ostalog sadržaja koji se
prikazuje na stranici. Pozornost se može privući i korištenjem naslova u obliku važnih
tvrdnji, kontroverzi ili čak zbunjenosti kod čitatelja. Iako su ove taktike učinkovite za
privlačenje pozornosti, one mogu pokvariti dojam cjelokupnog članka, ukoliko ostatak
članka ne zadovolji očekivanja koja je stekao čitatelj promatranjem naslova.
•
Opisni naslovi – naslovi trebaju opisivati sadržaj članka koji će čitatelji u nastavku
pročitati, ali ne moraju sadržavati sve činjenice koje članak obrađuje.
•
Korištenje ključnih riječi u naslovima – naslovi su vrlo važan dio SEO 5 procesa.
Korištenjem ključnih riječi povećava se mogućnost lakšeg pronalaska objavljenog
članka kao rezultata pretraživanja. Riječi na početku naslova imaju veće značenje za
SEO nego riječi na kraju.
Naslov predstavlja oglas objavljenog rada. Stoga, potrebno je odvojiti izvjesno vrijeme za
definiranje naslova. Većina blogera potroši mnogo vremena na pisanje zanimljivih i
poticajnih članaka koji često imaju slabu posjećenost zbog nezanimljivog ili loše definiranog
naslova. Vrlo je bitna i veličina naslova koja uvelike pridonosi uočljivosti samog članka i
privlači pozornost kod čitatelja.
5
SEO (engl. Search Engine Optimization) – optimizacija web stranice za Internet tražilice
21
Organiziranje unosa
Prilikom pisanja članaka potrebno ih je organizirati u kategorije koju su obuhvaćene
tematikom koju blog obrađuje. Radi lakše čitljivosti i prilagođenosti čitatelju nastoji se da
članak uvijek obrađuje isključivo jednu temu. Zbog organizacije bloga, članci imaju
tendenciju da se dodatno usredotoče na usko ciljanu temu, i na taj način omogućuju
pridjeljivanje određenog članka jednoj od kategorija. Na slici (Sl. 3.1) prikazana je podjela
tematike bloga na kategorije kojima su pridijeljeni članci.
Sl. 3.1 Organizacija unosa pomoću kategorija
Objavljeni članak najčešće ne obuhvaća cijelu kategoriju kojoj pripada, ali zato predstavlja
element koji pripada toj kategoriji. Usko fokusiranje objavljenih članaka na elemente
kategorija u kojima se nalaze, pridonosi organizaciji bloga u smislenu cjelinu, koja je
objedinjena jednom tematikom. Ova struktura jako je slična strukturi knjige, koja ima glavnu
temu, poglavlja i na kraju dijelove teksta koji su obuhvaćeni poglavljima.
Prednosti organiziranih članaka:
•
Jednostavnost korištenja – kratki i pregledni članci privlače čitatelje.
•
SEO – stranice koje obrađuju jednu temu, pomažu tražilicama da otkriju tematiku
objavljenog članka. Na taj način omogućeno je tražilicama da povežu članak s
pripadajućom temom o kojoj se piše.
•
Kontekstualni oglasi – obrađivanjem jedne tematike olakšava se kontekstualnim
sustavima za oglašavanje, poput sustava Google AdSense, da lakše odrede koju teme
22
članak obrađuje i na osnovu toga prikažu relevantne oglase koji su povezani s
obrađenom temom.
•
Jednostavnost pisanja – koncentracija oko jedne tematike pridonosi lakoći pisanja.
•
Povezivanje slijednih postova – zbog lakoće čitanja i prilagođavanja čitatelju, dugi
članci najčešće su organizirani u obliku niza članaka koji zajedno obrađuju istu
tematiku. Organizacijom članaka u kategorije, olakšava se pronalaženje članaka i
povećava se preglednost obrađene teme.
3.2. Održavanje blogova
Održavanje blogova može predstavljati vrlo zahtjevan posao. Postojeći blog servisi najčešće
ne zahtijevaju održavanje blogova, osim brisanja spam komentara. S druge strane, alati koji se
samostalnu instaliraju mogu zahtijevati određene radnje poput spremanja sigurnosnih kopija,
analiziranja blog statistika, optimiziranja za tražilice itd.
Optimizacija za tražilice
Upotrebom nekoliko osnovnih SEO tehnika može se povećati vidljivost bloga u određenim
Internet tražilicama, i osigurati da se blog nalazi što bliže vrhu rezultata pretraživanja koja su
usko povezana sa tematikom bloga. SEO tehnike koje se najčešće primjenjuju su:
•
Korištenje ključnih riječi unutar sadržaja – prilikom pisanja novih sadržaja treba
nastojati koristiti ključne riječi koje su bitne za tematiku koju blog obrađuje. Na
primjer, ako blog obrađuje ronjenje u zadarskom arhipelagu, onda određene ključne
riječi, kao što su „ronjenje u zadarskom arhipelagu“ i „zadarski arhipelag“, treba
učestalo i dosljedno koristiti prilikom pisanja.
•
Korištenje opisnih naslova – prilikom optimizacije za tražilice, može biti vrlo korisno
korištenje opisnih naslova (koji sadrža ključne riječi) za blog stranice, članke i naslove
unutar članaka (korištenjem XHTML oznaka H1, H2 itd). Ako pišemo recenziju o
digitalnom fotoaparatu, umjesto naslova „Osvrt na DSLR-A200“, upotrijebiti ćemo
naslov „Recenzija digitalnog fotoaparata Sony DSLR-A200“.
•
Definiranje smislenih URL-a – korištenjem smislenih naziva URL-a, može se također
pridonijeti optimizaciji za tražilice.
23
•
Optimiziranje postova – osim korištenja ključnih riječi u objavljenim postovima, vrlo
je važno pisati o jednoj određenoj temi, i nastojati da post bude odgovarajuće duljine,
barem nekoliko stotina riječi.
•
Korištenje META oznaka – različiti pretraživači pridaju različitu važnost META
oznakama, no korisno ih je imati. META oznake spremaju se u HEAD dijelu
predložaka koji se koriste za prikaz elemenata na web stranici. U ovom kontekstu
koriste se dvije vrste META oznaka: opisne oznake i oznake ključnih riječi. U
nastavku se nalazi primjer oznaka:
<META NAME="description" content="News, views and reviews by blog
publisher Mario Mustapic.">
<META NAME="keywords" content="Mario Mustapic, Web, programming, PHP,
AJAX, jQuery, MySQL, Application design">
Osim primjene tehnika optimizacije za web tražilice, vrlo je važno prijaviti blog na postojeće
web tražilice. Na taj način osigurava se da web roboti, aplikacije koje koriste tražilice u
potrazi za novim sadržajima na webu, pregledaju blog i pronađu sadržaj koji može biti
koristan kao rezultat pretraživanja.
Korištenje servisa Google Analytics za praćenje statistika
Google Analytics može se koristiti za praćenje statistika bloga, i saznavanje korisnih
informacija o posjetiteljima bloga. Korištenjem Google AdWords servisa zajedno sa drugim
Internet programima za oglašavanje, i upotrebom Google Analytics servisa može se povećati
promet na web stranici.
Google Analytics djeluje na isti način kao i slični servisi koji postoje na Internetu. Potrebno je
unutar bloga dodati poseban JavaScript kod, koji se izvršava svaki put kada se učita stranica
bloga. Ukoliko se koriste blog alati, potrebno je unutar glavnog predloška koji se koristi za
prikaz elemenata na web stranici, dodati Analytics kod. Pritom, potrebno je uzeti u obzir da se
dio web stranice u koji smo dodali Analytics kod izvršava svaki put kada se pristupa blogu.
Analytics kod koji se dodaje u web stranicu prikazan je u nastavku:
script src="http://www.google-analytics.com/urchin.js"
type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-00000000-1";
urchinTracker();
</script>
24
Na slici (Sl. 3.2) prikazan je izgled nadzorne stranice Google Analytics servisa na kojoj se
nalazi kratak sažetak osnovnih statistika koje su dostupne za web stranicu. Na samom vrhu
prikazan je broj posjeta u obliku u grafikona. U nastavku prikazane su informacije o
korištenosti web stranice, zastupljenosti pojedinih preglednika, načinu na koji su posjetitelji
došli na web stranicu itd.
Sl. 3.2 Izgled nadzorne stranice servisa Google Analytics
25
4. Studijski slučaj: objektno-orijentirani blog
U prvom dijelu ovog završnog rada definirani su osnovni termini vezani za izradu, upravljanje
i održavanje blog alata. Također su spomenuti i neki od postojećih blog alata koji su dostupni
putem Interneta.
U sklopu ovog rada obrađen je studijski slučaj razvoja blog alata korištenjem objektnoorijentirane paradigme. Aplikacija je razvijena u programskom jeziku PHP, uz korištenje baze
podataka MySQL u kojoj su pohranjeni svi podaci koje aplikacije koristi prilikom
izvršavanja.
4.1. Opis aplikacije
Sustav koji se izvršava u pozadini blogova, kojeg korisnici prilikom pristupanja blogu ne
vide, temelji se na sustavu za samostalno upravljanje sadržajem (CMS). CMS sustav
preuzima sadržaj od korisnika (osobe koja unosi novi članak), pohranjuje ga u bazu podataka i
pomoću dostupnih predložaka prikazuje rezultat čitatelju bloga. Na slici (Sl. 4.1) prikazan je
dijagram koji opisuje spomenuti proces.
Sl. 4.1 Dijagram sustava za samostalno upravljanje sadržajem
Aplikacija koja je razvijena za potrebe ovog rada sastoji se od dva dijela. Prvi dio obuhvaća
sustav za administraciju bloga, a drugi dio obuhvaća sustav za prikaz bloga i pripadnih
članaka. Sustav za administraciju omogućuje korisniku unošenje novih članaka, uređivanje
postojećih, dodavanje novih kategorija u koje se mogu svrstati članci po tematici koju
obrađuju, dodavanje novih korisnika, linkova itd. Sustav koji prikazuje sadržaj bloga sastoji
se od nekoliko komponenti i prikazan je slikom (Sl. 4.2). Prvu i osnovnu komponentu
predstavlja naslovna stranica koja prikazuje pet najnovijih članaka (broj članaka koji se
prikazuje može se promijeniti u konfiguracijskoj datoteci). Na naslovnoj stranici prikazuju se
naslovi i kratki sažeci članaka. Odabirom pojedinog članka pristupa se stranici koja prikazuje
26
cijeli članak zajedno sa komentarima čitatelja. Arhiva članaka predstavlja sljedeću
komponentu sustava, koja prikazuje članke sortirane prema mjesecu i godini u kojoj su
objavljeni. Stranica koja prikazuje postove prema kategoriji kojoj pripadaju također
predstavlja komponentu ovog sustava. Kategorija se najčešće odnosi na tematiku koja je
obrađena objavljenim člankom, i pridjeljuje se članku neposredno prije objavljivanja. Putem
naslovne stranice moguće je pretraživati članke koji su pohranjeni u bazi podataka.
Pretraživanje također čini sastavni dio sustava za prikaz sadržaja.
Naslovna
stranica
Blog arhiva
Blog postovi i
komentari
Rezultati
pretraživanja
Sl. 4.2 Dijagram sustava za prikazivanje sadržaja bloga
Na slici (Sl. 4.3) prikazan je slijed koraka prilikom pristupa posjetitelja blog stranici. Na
samom početku klijent šalje zahtjev web poslužitelj za blog stranicom koju želi posjetiti.
Nakon toga aplikacija na web poslužitelju dohvaća potrebne podatke iz baze podataka, koja se
nalazi na odvojenom poslužitelju. Nakon primljenog odgovora od baze podataka, unutar
aplikacije izgrađuje se pomoću predložaka naslovna blog stranica koja prikazuje nekoliko
članaka koji su posljednji objavljeni. Web poslužitelj vraća klijentu formatiranu blog stranicu.
Prikazani postupak ponavlja se kod pristupa pojedinim postovima, i drugim stranicama koje
se dinamički generiraju. Ako se pristupa statičnoj stanici (npr. „kontakt“ stranica) koja je
pohranjena na tvrdom disku, web poslužitelj ne pristupa bazi podataka, nego zahtijevanu
stranicu odmah prosljeđuje natrag klijentu.
27
Sl. 4.3 Dohvaćanje podataka i prikaz blog stranice na klijentskom računalu
4.2. Opis baze podataka
Sustav koji upravlja sadržajem i pohranom podataka koristi MySQL bazu podataka za
spremanje svih podataka. Unutar sustava za upravljanje bazom podataka nalazi se baza
podataka blog_db, u kojoj su pohranjene sve tablice. U navedenoj bazi podataka nalazi se
sedam tablica:
•
blog_posts – u ovoj tablici pohranjeni su podaci o postovima.
•
blog_comments – tablica sadrži komentare koji su povezani sa pojedinim postovima.
•
blog_users – tablica sadrži informacije o korisnicima.
•
blog_categories – tablica sadrži kategorije kojima se pojedini članci mogu
pridijeliti.
•
blog_links – linkovi koji se prikazuju u izborniku sa strane pohranjeni su u ovoj
tablici.
•
link_categories – ova tablica sadrži kategorije u koje možemo smjestiti linkove.
Svaka kategorija prikazana je odvojeno u izborniku sa strane.
•
blog_pages – u ovoj tablici pohranjuje se sadržaj stranica koje se mogu naknadno
dodati.
Povezanost pojedinih tablica i imena atributa koji se nalaze u tablicama prikazani su slikom
(Sl. 4.4). Na navedenoj slici podebljano su označeni primarni ključevi pomoću kojih je svaki
podatak jedinstveno označen. Strani ključevi označeni su s oznakom „FK“ pokraj atributa.
28
blog_posts
PK
post_id
FK2
FK1
title
date_created
date_modified
summary
content
user_id
category_id
blog_comments
PK
comment_id
FK1
author
author_mail
author_url
date_created
content
post_id
blog_categories
PK
category_id
blog_links
PK
link_id
FK1
url
name
description
link_cat_id
name
description
blog_users
PK
user_id
username
password
email
nicename
about
register_date
last_login
status
activation_key
link_categories
PK
link_cat_id
name
description
blog_pages
PK
page_id
FK1
title
content
date_created
user_id
Sl. 4.4 Konceptualni model baze podataka
Najvažnija tablica u ovoj bazi podataka je tablica blog_posts koja sadrži podatke bitne za
ispravan rad bloga. Sadržaj ove tablice kao i opis pohranjenih podataka prikazani su tablicom
(Tablica 4.1). Svaki post jedinstveno je identificiran pomoću atributa post_id, koji se koristi
kod pristupa pojedinačnim postovima. Unutar polja title pohranjen je naslov članka. Kratak
sadržaj pohranjuje se u polje pod nazivom summary, a sadržaj cjelokupnog članka pohranjen
je u polje content. Pomoću atributa user_id i category_id referencirane su tablice
blog_users, odnosno blog_categories, i na taj način omogućen je dohvat podataka o
korisniku koji je objavio članak, kao i o kategoriji u kojoj se članak nalazi.
Tablica koja sadrži komentare i tablica koja sadrži podatke o korisnicima također čine vrlo
važan dio sustava. Bez tablice s podacima o korisnicima ne bi bilo moguće prijaviti se u
sustav i uređivati blog. Interakcija između korisnika postala je sastavni dio Interneta i zbog
toga tablica s komentarima posjetitelja predstavlja važnu komponentu blog aplikacije.
29
Tablica 4.1 Sadržaj tablice blog_posts s odgovarajućim tipovima podataka
Polje
Tip podatka
Opis
post_id
int
Cjelobrojna vrijednost
title
varchar(255)
Tekst duljine do 255 znakova
date_created
datetime
Datum i vrijeme
date_modified
timestamp
Vremenska oznaka koja se automatski ažurira
summary
text
Tekst promjenjive veličine
content
text
Tekst promjenjive veličine
user_id
int
Cjelobrojna vrijednost
category_id
int
Cjelobrojna vrijednost
U nastavku prikazan je primjer SQL upita pomoću kojeg se dohvaćaju podaci o članku koji je
identificiran brojem tri. Dohvaćaju se podaci o jedinstvenom broju posta, naslovu, kratkom
sadržaju, jedinstvenom broju korisniku, jedinstvenom broju kategorije, datumu i na kraju
korištenjem podupita dohvaća se broj komentara koje članak sadrži.
SELECT post_id, title, summary, content, user_id, category_id,
DATE_FORMAT(date_created, '%e %b %Y') AS date,
(SELECT COUNT(*)
FROM blog_comments
WHERE blog_posts.post_id = blog_comments.post_id) AS comments,
FROM blog_posts
WHERE post_id = 3
Na slici (Sl. 4.5) prikazan je izgled tablice blog_comments u kojoj su pohranjeni komentari.
U stupcu s imenom post_id pohranjeni su podaci o članku na koji se komentar odnosi.
Ostali podaci sadrže ima autora, njegovu adresu elektroničke pošte, datum kada je komentar
nastao i sam komentar.
Sl. 4.5 Podaci pohranjeni u tablici blog_comments
30
4.3. Programsko rješenje
Kao i sve ostale web stranice koje dinamički učitavaju podatke iz baze podataka, tako i ova
blog aplikacija sastoji se od dijela koji je vidljiv svim posjetiteljima i dijela koji služi za
administraciju. Posjetitelji koji imaju potrebne korisničke podatke mogu pristupiti ovom
sustavu i izvršavati određene radnje. Slika (Sl. 4.6) prikazuje UML dijagram koji ilustrira
osnovne slučajeve korištenja bloga.
Blog
Pregledavanje
članaka
Unos komentara
Pretraživanje bloga
Pregledavanje
arhive
Posjetitelj bloga
«uses»
Dodavanje novih
linkova
«uses»
Administriranje
bloga
Ovlašteni korisnik
«uses»
«uses»
Dodavanje novih
stranica
Dodavanje novih
kategorija
Dodavanje novih
članaka
«uses»
Uređivanje članaka
Sl. 4.6 Dijagram slučajeva korištenja
31
Slika (Sl. 4.6) prikazuje što se događa kad korisnik putem administrativnog sučelja unose
novi članak. Sadržaj forme koju je korisnik ispunio šalje se PHP ili CGI skripti, koja zatim
otvara konekciju prema bazi podataka i putem upita spremaju se vrijednosti u bazu podataka.
Sl. 4.7 Slijed izvršavanja operacija kod dodavanja novog članka
Prilikom pristupanja običnog korisnika blogu, situacija je malo složenija. Kod zahtjeva za
prikazivanjem naslovne stranice izvršava se sljedeći slijed operacija:
1. Web poslužitelj prima klijentov zahtjev za dohvaćanje naslovne stranice.
2. Web poslužitelj izvršava PHP skriptu, u kojoj se nalazi programski kod za spajanje na
bazu podataka.
3. Prilikom spajanja na bazu podataka prosljeđuju se podaci o korisničkom imenu i
lozinki zajedno sa informacijama o potrebnim podacima.
4. MySQL baza podataka vraća rezultat skripti, koja generira pripadajući XHTML kod
radi prikaza formatiranog izgleda naslovne stranice bloga.
5. Skripta šalje gotovu stranicu web poslužitelju, koji isporučuje klijentu naslovnu
stranicu bloga zajedno sa svim slikama, CSS datotekama itd.
32
Navedeni postupak prikazan je na slici (Sl. 4.7).
Sl. 4.8 Slijed izvršavanja operacija kod zahtjeva za prikazom naslovne stranice
Blog aplikacija sastoji se od više datoteka u kojima su pohranjeni razredi i HTML oznake.
Datoteke koje su važne za ispravan rad sustava navedene su u nastavku:
•
index.php – naslovna stranica koja prikazuje najnovije postove.
•
admin.php – nakon uspješnog prijavljivanja korisnik se preusmjerava na ovu
stranicu, odakle može izvršavati sve radnje koje su bitne za uređivanje bloga.
•
login.php – putem ove stranice korisnik se prijavljuje u administrativni sustav.
•
blogpost.php – u ovoj datoteci pohranjen je programski kod blog objekta.
•
archive.php – ova stranica prikazuje članke koji su objavljeni prema godinama i
mjesecima u kojima se objavljeni. Odabirom pojedinog mjeseca, ispisuju se svi članci
koji su napisani u tom mjesecu.
•
functions.php – funkcije za rad sa objektima nalaze su u ovoj datoteci.
•
db_connect.php – datoteka sadrži definiranu konekciju prema bazi podataka.
Osim navedenih datoteka postoji i nekoliko dodatnih datoteka koje su uglavnom povezane sa
administracijskim sučeljem i služe za dodavanje i uređivanje postova, linkova i kategorija.
33
Nakon dolaznog zahtjeva na web poslužitelj, počinje se izvršavati skripta koja se nalazi u
index.php dokumentu. Nakon prikazivanja zaglavlja, poziva se funkcija GetBlogPosts()
koja za svaki objavljeni post kreira objekt klase BlogPost:
$blogPosts = GetBlogPosts(null, 5);
foreach ($blogPosts as $post) {
Unutar klase BlogPost definirane su varijable koje se koriste za prikaz informacija o članku:
public
public
public
public
public
public
public
public
public
public
$postId;
$title;
$dateCreated;
$post;
$summary;
$author;
$category;
$comments;
$authorAbout;
$authorMail;
Varijable se koriste za prikaz naslova, sažetka, broja komentara, datuma kada je članak
kreiran, imena autora itd.
Kao rezultat, funkcija GetBlogPosts() vraća samo pet najnovijih članaka (ova vrijednost
može se promijeniti). Potom se za svaki objekt kreira HTML kod:
<div id="post_<?php echo $post->postId ?>" class="entry">
<h1 class="a_heading">
<a href="post.php?post_id=<?php echo $post->postId ?>">
<?php echo $post->title ?></a></h1>
<p>
<?php echo $post->summary ?>
</p>
<br class="clear" />
<p class="button" style="text-align: right;">
<a href="#">Vise...</a>
</p>
<div class="post_meta">
<span class="post_info">
<span class="post_time"><?php echo $post->dateCreated ?></span>
<span class="post_cat">
<a rel="category" href="#"><?php echo $post->category ?></a>
</span>
</span>
<span class="post_comment"><?php echo $post->comments ?>
</span>
<br class="clear" />
</div>
</div>
34
Pomoću stilskog jezika za opis web stranice (CSS), moguće je formatirati zadani HTML kod.
Korištenjem stilova koji su prikazani u nastavku elementi su razmješteni na odgovarajuća
mjesta unutar web stranice (prikazan je samo dio stilova):
#content .entry {
padding-bottom: 10px;
margin-bottom: 20px;
}
#content .post_meta {
margin-top: 15px;
background: rgb(245, 245, 245) none repeat scroll 0 0;
display: block;
font-size: 11px;
line-height: 30px;
padding: 0 10px 0 0;
letter-spacing: -1px;
text-transform: uppercase;
-moz-border-radius-bottomleft: 3px;
-moz-border-radius-bottomright: 3px;
-moz-border-radius-topleft: 3px;
-moz-border-radius-topright: 3px;
}
#content .post_meta .post_info {
display: block;
float: left;
height: 30px;
line-height: 30px;
}
Elemente je moguće razmjestiti na više načina, i moguće je definirati svoj vlastiti stilski
predložak. Kao rezultat, spajanjem rezultata dobivenih iz baze podataka, generiranjem HTML
oznaka i formatiranjem elemenata pomoću CSS-a dobije se ispis članka koji je prikazan na
slici (Sl. 4.8).
Sl. 4.9 Izgled pojedinog članka koji se nalazi na naslovnoj stranici
35
Gravatar
Gravatar (engl. Globally Recognized Avatar) usluga je na Internetu koja omogućava
korištenje iste slike na svim forumima i blogovima na kojima je korisnik aktivan. Aplikacija
podržava ovu vrstu usluge i korisnicima koji ostavljaju komentare na blogu omogućena je
prepoznatljivost i jedinstvena identifikacija.
Funkcija koja dohvaća sliku korisnika koji je ostavio komentar na blogu sastoji se od
izvršavanja MD5 algoritma nad korisnikovom adresom elektroničke pošte. Rezultat koji se
dobije ovim postupkom je kombinacija slova i brojeva duljine 32 znaka. Moguće je još
definirati i veličinu slike, kao i web adresu, ako postoji. Funkcija koja generira URL slike
korisnika koji je ostavio komentar nalazi se u nastavku:
function GetGravatar($inMail, $inURL, $inSize) {
$mailMD5 = md5( strtolower($inMail) );
$URL = "http://www.gravatar.com/avatar/"
$gravatarURL = $URL . $mailMD5 . "&s=" . $inSize . "&d=" . $inURL;
return $gravatarURL;
}
Dobiveni rezultat prosljeđuje se atributu src HTML oznake <img>.
RSS
Kratak sadržaj je zapravo XML datoteka koja sadrži informacije o najnovijim objavljenim
člancima. Datoteka koja sadrži kratak sadržaj bloga naziva se index.xml. Pozivom funkcije
makeFeed() ažurira se datoteka najsvježijim podacima. Funkcija se poziva kod dodavanja
novih članaka, i kod brisanja i uređivanja postojećih.
Na samom početku funkcije otvara se index.xml datoteka i zapisuju se nepromjenjive
vrijednosti:
$filename = $_SERVER["DOCUMENT_ROOT"] . "/index.xml";
$fh = @fopen($filename, "w");
$rssfile = "<rss version=\"2.0\">
<channel>
<title>Mario - Blog</title>
<link>http://localhost /</link>
<description>Tehnologije Interneta</description>
<language>hr</language>";
Nakon upisa nepromjenjivih vrijednosti, postavlja se upit na bazu podataka i dohvaćaju se
podaci za posljednjih deset članaka:
36
$sql = "SELECT post_id, title, summary,
DATE_FORMAT(date_created, '%a, %d %b %Y %T GMT') as pubdate
FROM blog_posts
ORDER BY date_created DESC
LIMIT 10";
$result = mysql_query($sql);
Za svaki dohvaćeni članak, podaci iz baze podataka se spremaju u privremene varijable koje
se zatim zapisuju u XML datoteku. Neke varijable potrebno je prilagoditi za zapis u XML
datoteku:
if ($post = mysql_fetch_array($result)) {
do {
$post_id = $post["post_id"];
$pubdate = $post["pubdate"];
$summary = format($post["summary"]);
$title = $post["title"];
$title = strip_tags($title);
$title = htmlentities($title);
$rssfile .= " <item>\n";
$rssfile .= " <pubDate>$pubdate</pubDate>\n";
$rssfile .= " <title>$title</title>\n";
$rssfile .= "<link>";
$rssfile .= "http://localhost/post.php?post_id=$post_id";
$rssfile .= "</link>\n";
$rssfile .= "<description>
$rssfile .= "<![CDATA[$summary]]> ";
$rssfile .= "</description>\n";
$rssfile .= " </item>\n";
} while ($post = mysql_fetch_array($result));
}
$rssfile .=" </channel></rss>";
Na samom kraju funkcije, zatvaraju se potrebne oznake i pripremljeni zapis se pohranjuje u
index.xml datoteku.
U glavnoj datoteci potrebno je dodati, nakon oznake <title>, sljedeću linija koda koja
sadrži informaciju gdje se nalazi datoteka u kojoj je pohranjen sažetak sadržaja:
<link rel="alternate" type="application/rss+xml"
title="RSS 2.0 feed" href="http://localhost /index.xml" />
Pretraživanje
Tražilica jedan je od važnijih dijelova svake web stranice. Pomoću tražilice koja se nalazi
unutar izbornika, i koja se prikazuje na svakoj stranici, moguće je pretraživati objavljene
članke. U bazi podataka kreirani su indeksi za pretraživanje nad tablicom blog_posts. Kada
se baza podataka pretražuje, provjeravaju se tri zadana polja: naslov, sažetak i sadržaj cijelog
članka. Ako pretražujemo neku riječ koja se nalazi u naslovu jednog sažetka, i pojavljuje se u
37
sažetku drugog članka, prvo će se prikazati rezultat koji sadrži traženi pojam u naslovu, zato
jer su tako definirani prioriteti.
Pretraživanje baze podataka MySQL izvedeno je pomoću funkcija MATCH i AGAINST.
Argument koji se predaj MATCH funkciji mora biti odvojen zarezima i mora sadržavati
elemente nad kojima smo kreirali indeks za pretraživanje. Argument AGAINST funkcije
predstavlja pojam kojeg tražimo. MySQL automatski vraća rezultate poredane po važnosti.
SQL upit koji pretražuje bazu podataka prikazan je u nastavku:
SELECT post_id, title, summary,
DATE_FORMAT(date_created, '%e %b %Y') AS date
FROM blog_posts
WHERE MATCH (title,summary,content)
AGAINST ('$q') LIMIT 50
4.4. Rezultati
Blog se jednostavno pokreće upisivanjem adrese web poslužitelja na kojem se nalazi (npr.
www.neka-domena.com). Početna stranica označena je imenom index.php i automatski se
prepoznaje od strane web poslužitelja i nije ju potrebno posebno navoditi. Nakon unosa
adrese u web preglednik, programski jezik PHP izvršava skripte koje se nalaze unutar web
stranice i kao rezultat vraća klijentu naslovnu stranicu bloga.
Za prikaz naslovne stranice bloga koristi se osnovno sučelje kojem mogu pristupiti svi
korisnici. Administrativni sustav bloga, koji nije dostupan svim korisnicima (samo onima koji
su registrirani i posjeduju ispravne korisničke podatke), nalazi se u pozadini i izvršava se
samo prilikom prijavljivanja autoriziranog korisnika.
Administracijskom dijelu sustava pristupa se pozivom stranice login.php. Nakon unošenja
točnih korisničkih podataka pojavljuje se administrativno sučelje. Unutar ovog sučelja
moguće je pisati nove članke i uređivati postojeće, dodavati nove kategorije, kreirati nove
stranice i uređivati korisničke podatke. Izgled stranice koja omogućuje administraciju bloga
prikazan je na slici (Sl. 4.9). Stranica se sastoji od dva dijela. S lijeve strane nalazi se izbornik
unutar kojeg su definirane sve radnje koje korisnik smije izvršavati. S desne strane nalazi se
prostor unutar kojeg se pojavljuju obrasci koje korisnik ispunjava i šalje na obradu web
poslužitelju. Rezultati se spremaju u bazu podataka iz koje se naknadno dohvaćaju i prikazuju
na naslovnoj stranici.
38
Osnovnom sučelju bloga pristupa se pozivom naslovne stranice. Na naslovnoj stranici
prikazuju se najnoviji objavljeni članci u obrnuto kronološkom redoslijedu. Prikazani su samo
sažeci članaka, a stranici koja sadrži potpune članke pristupa se klikom na naslov članka sa
naslovne stranice. Na stranici koja sadrži cjelokupne članke moguće je ostaviti svoj komentar
na objavljeni članak. Izgled stranice koja sadrži cijeli članak i pripadne komentare prikazan je
na slici (Sl. 4.10).
Sl. 4.10 Izgled stranice za administraciju bloga
Osnovno sučelje bloga sastoji se također od dva dijela. Lijevi dio predstavlja sadržaj bloga, a
s desne strane nalazi se izbornik koji sadrži korisne linkove i opciju za pretraživanje bloga.
Moguće je pristupati kategorijama u koje su smješteni članci. Svi članci se pohranjuju u
virtualne arhive, koje posjetitelju mogu olakšati pronalazak određene informacije.
39
Sl. 4.11 Izgled stranice koja sadrži potpuni članak
40
Zaključak
Tijekom proteklih nekoliko godina blogovi su značajno promijenili izgled Weba i utjecali su
na razvoj interakcije između korisnika. Iako je u početku uređivanje blogova bilo dostupno
samo nekolicini korisnika koji su posjedovali napredna znanja o izrađivanju web stranica, s
vremenom su blogovi postali dostupni svima, posebice široj populaciji koja posjeduje
osnovna znanja o računalu.
U ovom radu obrađeno je nekoliko alata za izradu bloga. Među nekim alatima postoje
značajne razlike koje mogu biti presudne prilikom odabira alata za pokretanje bloga. Stoga je
važno prije početka izrade bloga dobro definirati ciljeve i usporediti značajke koje posjeduju
pojedini alati, jer naknadna promjena alata može uzrokovati određene probleme.
Prilikom razvoja aplikacije za izradu bloga najveći problem predstavljala je implementacija
administracijskog sučelja i prikaz članaka, koji su uspješno riješeni korištenjem objektnoorijentirane paradigme.
U budućem radu bilo bi korisno ugraditi mogućnost naprednog uređivanja postova, kao i
podršku instalaciji dodatnih modula kojima bi se proširila funkcionalnost same aplikacije. U
daljnjem razvoju aplikacije svakako bi trebalo uzeti u obzir mogućnost naprednog
podešavanja sustava kao i mogućnost instaliranja vlastitih predložaka.
41
Literatura
[1]
ROWSE, D; GARRETT, C: ”ProBlogger: Secrets for Blogging Your Way to a Six-Figure
Income”, Indianapolis: Wiley Publishing, Inc., 2008.
[2]
STONE, B: “Blogging: Genius Strategies for Instant Web Content”, New Riders
Publishing, 2002.
[3]
STAUFFER, T: “How to Do Everything with Your Web 2.0 Blog”, McGraw-Hill, 2008.
[4]
BUDD, A ET AL: “Blog Design Solutions”, New York: Springer-Verlag, 2006.
[5]
MCNULTY, S: “Building a WordPress Blog People Want to Read”, Berkeley: Peachpit
Press, 2009.
[6]
DOCTOROW, C ET AL: “Essential Blogging”, O’Reilly, 2002.
[7]
BYRON, DL; BROBACK, S: “Publish and Prosper: Blogging for Your Business”, New
Riders, 2006.
[8]
HAMMERSLEY, B: “Developing Feeds with RSS and Atom”, O’Reilly, 2005.
[9]
Seven Blogging Tools Reviewed, s Interneta,
http://www.techsoup.org/learningcenter/webbuilding/page5516.cfm, 25. svibnja 2009.
[10] J. RUBENKING, N: Blog Tools, s Interneta,
http://www.pcmag.com/article2/0,2817,1400336,00.asp, 25. svibnja 2009.
[11] BLOOD, R: Weblogs: a history and perspective, s Interneta,
http://www.rebeccablood.net/essays/weblog_history.html, 2. lipnja 2009.
[12] CHAMOLI, C: Birth of The Blogosphere, s Interneta,
http://chiragchamoli.wordpress.com/2008/10/08/birth-of-the-blogosphere/, 2. lipnja
2009.
[13] THOMPSON, C: A Timeline of the History of Blogging, s Interneta,
http://nymag.com/news/media/15971/, 2. lipnja 2009.
[14] LENSSEN, P: Good Blog Writing Style, s Interneta,
http://blogoscoped.com/archive/2006-10-11-n47.html, 4. lipnja 2009.
[15] WordPress Features, s Interneta, http://codex.wordpress.org/WordPress_Features, 4.
lipnja 2009.
[16] LiveJournal, s Interneta, http://www.appappeal.com/app/livejournal/, 4. lipnja 2009.
[17] PEREZ, S: The Next Social Networks Will Be Powered By WordPress and Movable
Type, s Interneta,
http://www.readwriteweb.com/archives/the_next_social_networks_powered_by_wordpr
ess_movable_type.php, 6. lipnja 2009.
[18] J. DEITEL, P; M. DEITEL, H: “AJAX, Rich Internet Applications, and Web Development
For Programmers”, Boston: Pearson Education, Inc., 2008.
[19] GRANNELL, C: “The Essential Guide to CSS and HTML Web Design”, New York:
Springer-Verlag, 2007.
42
[20] FLANAGAN, D: “JavaScript: The Definitive Guide”, O’Reilly, 2006.
[21] ZERVAAS, Q: “Practical Web 2.0 Applications with PHP”, New York: Springer-Verlag,
2008.
[22] SCHULTZ, D; COOK, C: “Beginning HTML with CSS and XHTML”, New York:
Springer-Verlag, 2007.
[23] BABIN, L: “Beginning Ajax with PHP”, New York: Springer-Verlag, 2007.
[24] D. HENDRICKS, K: WordPress versus Movable Type: The Smackdown Comparison, s
Interneta, http://ithemes.com/wordpress-versus-movable-type-the-smackdowncomparison/, 10. lipnja 2009.
43
Sažetak
Razvoj alata za izradu bloga
U ovom radu objašnjeni su osnovni koncepti blogova, definirane su osnovne vrste i prikazana
je struktura bloga. Opisan je postupak izrade bloga i objašnjeni su najvažniji koraci prilikom
izrade bloga. Predstavljeni su najpoznatiji blog alati i njihov način rada. Uspoređena su
njihova svojstva i prikazane su najvažnije prednosti i nedostaci. Opisane su najvažnije tehnike
uređivanja i održavanja blogova. U studijskom slučaju opisana je aplikacija za administraciju
i upravljanje sadržajem bloga, baza podataka koja je korištena za pohranu podataka,
programska implementacija te način rada aplikacije. Na samom kraju rada, prikazani su
dobiveni rezultati.
44
Summary
Blog tool development
This paper explains the basic concepts of blogs and defines the basic types of blogs. The
process of blog creation is described, and the most important steps of the same procedure are
explained. The most popular blog tools and their modes of work are presented. The properties
are compared and major advantages and disadvantages of blog tools are specified. The most
important techniques of blog editing and blog maintenance are presented. Study case
describes application for blog administration and content management, database used for data
store and manipulation and program implementation. The last part of his paper contains
results of practical work.
45
Ključne riječi/Keywords
Popis blogova
Blogroll
Potvrda o postavljanju linka na web stranicu
Trackback
Kratak sažetak sadržaja
Really Simple Syndication (RSS)
Stalni link
Permanent link (permalink)
Online dnevnik
Blog (Weblog)
Bloger
Blogger
Sustav za samostalno upravljanje sadržajem
Content Management System (CMS)
Prezentacijski jezik za kreiranje web stranica
HyperText Markup Language (HTML)
Stilski jezik za opis izgleda web stranice
Cascading Style Sheets (CSS)
46