Zakaj optimitizirati? ON-SITE optimizacija OFF-SITE optimizacija

Tehnična optimizacija

Validacija kode

Validirana, strukturno pravilna XHTML koda omogoči spletnim iskalnikom, da kar najbolj temeljito izluščijo vsebino spletne strani ob indeksiranju. Sama validacija sicer ne prispeva k višjemu rangu, pripomore pa k temu, da pajki lahko najdejo vse vsebinske sklope in povezave in tako v največji meri indeksirajo spletno mesto.


Meta označbe

Meta označbe so del kode spletne strani in vsebujejo informacije, ki naredijo spletno stran iskalnikom bolj prijazno, saj so pomembne za predstavitev strani v iskalnikih. XHTML meta označbe, ki imajo lahko vpliv na rang strani v iskalnikih so TITLE (naslov), DESCRIPTION (opis strani) in KEYWORDS (naštete ključne besede).

Informacije v meta označbah TITLE ter DESCRIPTION so v večini primerov edine informacije pod našim nadzorom, ki jih iskalniki prikažejo v spisku rezultatov, zato je primerna uporaba teh označb kritična za dobro uvrstitev. Stroka pravilno uporabo TITLE označbe pravzaprav uvršča na vrh on site faktorjev za dobro uvrstitev.

Označba DESCRIPTION je zaradi svoje narave pomemben element marketinga v spletnih iskalnikih (SEM, angl. Search Engine Marketing), saj lahko tako kot naslov strani potencialnega obiskovalca pritegne ali odvrne h kliku in tako prispeva k razmerju med prikazi in kliki (CTR, angl. Click Through Rate). Tako kot naslov strani, naj bi bil tudi opis unikaten za vsako podstran in ne splošen opis celotnega spletnega mesta.

Meta označbo KEYWORDS zaradi zlorab v preteklosti ignorirajo mnogi iskalniki, med njimi tudi Google, a morda se lahko to v prihodnosti spremeni. Trenutno jo upoštevajo v kakšnih manj znanih imenikih, v računanju uteženega ranga pa jo minimalno upošteva tudi Yahoo.


Semantične XHTML označbe

S semantičnimi XHTML označbami določeni besedi ali frazi v besedilu določimo večjo težo. Tako tudi spletni iskalniki ugotovijo, da ima neka fraza večji ali manjši nivo pomembnosti v kontekstu besedila in razvrščevalni algoritmi iskalnikov na podlagi besedila med označbama določijo pomembnost strani, če se to besedilo pojavi kot iskalni pojem.

Najpogostejša praksa je uporaba naslovnih označb <H> (header), ki so na voljo v 6 različnih velikostih: od <H1> (največja velikost, najpomembnejši naslov) do <H6> (najmanjša velikost, najmanj pomemben naslov). Besedilo med <H> označbo je odebeljeno in ustrezne velikosti, kadar ne uporabimo CSS slogov. Poleg izražanja pomembnosti posameznih besed za spletne iskalnike je naloga naslovnih označb tudi strukturiranje besedila v poglavja in podpoglavja, kar vsekakor oblikuje boljšo uporabniško izkušnjo.

Označba <H1> je najpomembnejša označba, ki izraža tematiko besedila. Zaradi tega naj bi se na strani pojavila le enkrat in naj bi vsebovala besedilo, ki je bogato s ključnimi besedami, za katere stran optimiziramo.

Poleg naslovnih označb <H> so v XHTML-ju za označevanje besedila na voljo tudi označbe <STRONG>, <EM>, <B>, <I> in <U>. Medtem ko naslovne označbe besedilo prelamljajo na poglavja in podpoglavja, so te označbe uporabne za poudarke med samim besedilom. Potrebno pa je biti pozoren, da sta semantični označbi le <STRONG> in <EM> in le ti dve sporočata razvrščevalnim algoritmom, da je poudarjeno besedilo večjega pomena. Označbe <B>, <I> in <U> so prezentacijske označbe, ki le spremenijo vizualni prikaz besedila, na sam pomen pa nimajo vpliva.


Dinamične strani

Problematika dinamičnih strani je predvsem v možnosti generiranja velikega števila kompleksnih URL-jev z mnogimi parametri, ki kažejo na strani s podobno ali celo enako vsebino. Rezultat tega so težave pri indeksiranju strani, saj bo pajek porabil precej več pasovne širine na našem strežniku, poleg tega pa morda ne bo uspel indeksirati celotnega spletnega mesta.
Nepotrebno veliko število URL-jev lahko nastane zaradi različnih vzrokov:

  • Možnost aditivnega filtriranja množice vnosov: stran lahko obiskovalcu nudi možnost, da neko množico podatkov filtrira po združujočih kriterijih. Primer bi bil lahko filtriranje seznama knjig na spletni strani:
    • filtriranje po avtorju bi generiralo URL knjige.php?avtor=10
    • filtriranje po avtorju in zvrsti bi generiralo URL knjige.php?avtor=10&zvrst=12

Takšno ustvarjanje malo razlikujočih se strani z različnimi URL-ji je redundančno, saj za dosego posamezne detaljne strani o knjigi pajek potrebuje le en seznam z vsemi vnosi.

  • Možnost sortiranja množice vnosov: tako kot filtriranje je lahko možnost sortiranja vzrok za veliko število podobnih si strani:
    • knjige.php?sort=naslov&smer=gor
    • knjige.php?sort=naslov&smer=dol
  • Problematični parametri v URL-ju: parametri, kot so identifikator seje (angl. session) ali identifikator reference (angl. referral ID), so lahko vzrok za generiranje velikega števila URL-jev s praktično enako vsebino.
  • Dinamični koledarji: dinamični koledarji lahko generirajo povezave za skok na pretekle in prihodnje datume, pogosto brez časovne omejitve začetnega in končnega datuma:
    • koledar.php?dan=1&mesec=07&leto=2008
    • koledar.php?dan=1&mesec=07&leto=2009

Reorganizacija spletnega mesta

Marsikdaj se pri organizaciji spletnega mesta srečamo s premiki, preimenovanji ali izbrisi obstoječih strani. Ko bo iskalnik indeksiral strani s sicer isto vsebino, a vendar z drugačnim URL-jem, jo bo obravnaval kot povsem novo stran. Če je bila stran optimizirana za določene ključne besede in si je po določenem daljšem obdobju prisotnosti v spletnem prostoru pridobila večji rang za te besede, ga lahko ob takih premikih izgubi. V še slabšem primeru lahko nova stran dobi negativne točke, saj jo lahko iskalnik obravnava kot podvojeno vsebino, če pri ponovnem indeksiranju pajek obišče stran na novem naslovu, obenem pa ne zazna, da strani na starem naslovu ni več. Prav zaradi tega je potrebno pajkom sporočiti, da se je stran le prestavila oz. preimenovala.


Tehnologije in vsebina

Pajki vidijo spletno stran drugače kot jo vidi obiskovalec s spletnim brskalnikom. Spletni brskalniki so zmožni prikazati vrsto naprednih multimedijskih vsebin (Flash, video, avdio vsebine), poganjati skriptni jezik Javascript, prikazati okvirje, preoblikovati prikaz vsebine s pomočjo CSS pravil in prikazati slike – vsega tega spletni pajki ne zmorejo.

Adobe Flash se je od svojega nastanka v letu 1996 uveljavil kot tehnika za vključevanje animacij, dodajanje interaktivnosti in celo navigacije z namenom ustvarjanja bolj dinamičnih spletnih strani. Ker pa iskalniki še ne znajo dobro indeksirati vsebine Flash datotek, je za potrebe optimizacije za iskalnike zaželeno uvesti alternativno vsebino v osnovnem XHTML jeziku. Le-to lahko oblikovalec strani vključi v osnovno stran s pomočjo NOEMBED označbe, v katero vpiše vsebino, ki jo odjemalec brez podpore za Flash prikaže namesto Flash vstavka, ali pa ustvari povsem novo stran v osnovnem XHTML jeziku in prikaže povezavo nanjo. Pri uporabi NOEMBED označbe je potrebna posebna previdnost, da tekstovna vsebina odgovarja vsebini Flash vstavka, saj gre za prikaz različnih vsebin uporabnikom in spletnim pajkom in je kot takšna odprta za možnosti zlorabe. Sama uporaba te tehnike se sicer ne smatra kot black hat optimizacija, lahko pa jo nekateri iskalniki pomotoma označijo kot agresivno.

Skriptni jezik Javascript je v nasprotju s Flash-om manjkrat uporabljen za vstavljanje multimedijske vsebine, večkrat pa je v uporabi za implementacijo dinamične notranje navigacije. Javascript navigacija je implementirana s pomočjo onclick dogodka, ki se proži ob uporabnikovem kliku z miško. Za razliko od statične povezave pa onclick dogodek za parameter praviloma ne prejme URL naslova v standardni obliki, ampak parameter Javacript funkcije. Prav zaradi tega iskalniki ne morejo indeksirati notranjih povezav, kar je lahko za rangiranje usodna napaka. Prebrati in indeksirati znajo povezave, ki se nahajajo v atributu href, programsko definiranih in dogodkovno proženih povezav pa ne.

Javascript je v uporabi tudi za manipulacijo gradnikov spletne strani in s tem tudi same vsebine, predvsem z, v zadnjem času popularno, AJAX (Asynchronous Javascript and XML) tehnologijo. AJAX tehnologija omogoča posodabljanje dela spletne strani s pomočjo v ozadju vzpostavljene asinhrone povezave, preko katere spletni brskalnik dobi novo vsebino v XML ali drugačnem besedilnem formatu. AJAX lahko izboljša odzivnost spletne strani in s tem uporabniško izkušnjo, z nepazljivo uporabo pa lahko povzroči enake težave kot Javascript navigacija, saj so lahko deli vsebine dostopni le preko Javascript klicev, ki pa jih iskalniki ne morejo indeksirati.

V 90-ih letih so bile priljubljene strani v okvirjih. Okvirji lahko povzročajo težave spletnim iskalnikom, ker se ne podrejajo konceptualnemu modelu svetovnega spleta. V tem modelu ena stran v brskalniku prikazuje en URL, spletna mesta z okvirji pa prikazujejo več URL-jev (za vsak okvir enega) na eni strani. Iskalniki poskušajo povezati glavno stran, ki vsebuje definicijo okvirjev in posamezne URL-je okvirjev, a to je zaradi manjkajoče povratne povezave težji tehnični izziv, zato tudi odsvetujejo uporabo okvirjev. V primeru, da stran uporablja okvirje, je na voljo označba NOFRAMES, s pomočjo katere odjemalec brez podpore okvirjem prikaže nadomestno vsebino. Pri tej označbi velja enaka previdnost kot pri označbi NOEMBED, vendar pa ji zaradi pogostejših zlorab v preteklosti iskalniki pripisujejo manj teže pri rangiranju.

Prikaz vsebine se na modernih spletnih mestih oblikuje s pomočjo CSS pravil, ki pa jih iskalniki ne znajo interpretirati. Zaradi tega je morda postavitev vsebine, kot jo vidijo pajki, povsem drugačna kot postavitev v spletnem brskalniku. Na primer, tipičen predstavnik postavitve spletne strani je tro-stolpična postavitev. V sredinskem stolpcu se ponavadi nahaja vsebina, v levem in desnem stolpcu pa so navigacijski pas, dodatni mini moduli kot so anketa in druga, morda manj pomembna vsebina. Težava nastane, ker takšna tro-stolpična postavitev ponavadi zahteva v XHTML kodi najprej definicijo in vsebino levega in desnega stolpca, nato pa šele sredinski stolpec z glavno vsebino. Ker dajo spletni iskalniki več poudarka besedilu, ki je na vrhu strani, lahko izboljšamo rang tako, da poskušamo vsebino ne le vizualno, temveč tudi v XHTML kodi prestaviti na začetek strani.