Joomla! CMS: Robotisõbralikud lingid
21.08.2007 | Gunnar
Joomla! CMS võimaldab lihtsate vahenditega muuta lehel olevad lingid selliseks, et otsimootorite robotitel on neid lihtsam lugeda ja analüüsida. Samuti võivad “ilusad” lingid aidata oluliselt kaasa lehekülje leitavusele otsisüsteemidest nagu näiteks Google, MSN ja Yahoo!
Joomla! CMS ja “ilusad” lingid
Joomla! CMS omab “ilusate” linkide tuge ka sisseehitatud kujul, kuid need lingid pole maksimaalselt kasulikud, sest link ei anna konkreetse lehekülje kohta eriti mingit infot. Loomulikult on hea, et selliselgi kujul “ilusate” linkide tugi on olemas, sest sellega on loodud mingilgi kujul standardne mehhanism “ilusate” linkide toe ehitamiseks.
Olgu siin märkuse korras öeldud, et “ilusad” lingid on olulised seepärast, et need võivad sisaldada märksõnu, mis lingi taga olevat lehekülge iseloomustavad. Minu demolehel on näiteks olemas lehekülg, mis tutvustab RSGallery2 nimelist süsteemi põgusalt.
Selle lehekülje aadress oleks järgmistel juhtudel nagu toodud allolevas loendis. Et mul on Artio JoomSEF kasutusel, siis on kasutusel viimasel kujul toodud aadressid.
- SEF-laiendusi ei kasutata
http://aadress/joomla/index.php?option=com_content&task=view&id=15&Itemid=27 - Joomla! SEF
http://aadress/joomla/content/view/15/27/lang,et/ - Artio JoomSEF
http://aadress/joomla/et/komponendid/rsgallery2.html
Nagu näeme, siis viimasel juhul saame parima tulemuse – RSGallery2, millest antud tekst jutustab, sisaldub ka lehekülje aadressis ning vähemasti Google’i jaoks on see tugev argument.
Artio JoomSEF
Maksimaalse tulemuse saame mõnda kolmandate osapoolte kirjutatud komponenti kasutades. Selles näites kasutan ma Artio JoomSEF nimelist komponenti, mille arendajatel on õnneks olemas parem arusaam SEO-teemadest kui konkureeriva OpenSEF arendajatel. Nimelt toetab Artio JoomSEF komponenti Joom!Fish, millest oli juttu kandes Joomla! CMS: Tõlgime lehekülje ära. See tähendab, et tõlgitud tekstidele luuakse “ilusad” lingid arvestades tõlgetega. OpenSEF’il selline tugi puudub, kuigi tuleb seegi kenasti mitmekeelsete lehtedega toime.
Artio JoomSEF’i saab tõmmata Artio lehelt. Peale komponendi installeerimist tuleb see ära seadistada. Et eesti keeles kasutatavad täpitähed asendataks neile sarnaste mittetäpitähtedega, peame eesti tähtede jaoks looma asenduste definitsioonid.
Täpitähtede ja muude märkide asendused sisestatakse komadega eraldatuna Non-ascii char replacements kasti Artio JoomSEF’i konfiguratsioonis. Asenduste definitsioonid on kujul x|y, kus x on asendatav ning y asendav tähemärk. Et Ä asemele tekiks a, tuleb kirjutada selline definitsioon: Ä|a.

Fragment Artio joomSEF konfiguratsioonist. Tähemärkide asendustabel, mille abil saame defineerida täpitähtede asemel linkides kasutatavad tähemärgid.
Selleks, et Artio JoomSEF oskaks genereerida korrektsed “ilusad” lingid, peab see mitme keele toe korral teadma ka erinevas keeles alamlehtede aadresse. Minul on tehtud nii, et eestikeelne versioon lehest asub aadressil http://aadress/joomla/et/ ja ingliskeelne versioon aadressil http://aadress/joomla/en/.

Fragment Artio JoomSEF konfiguratsioonist. Lingid erinevates keeltes alamlehtede jaoks. Vajadusel võivad erinevates keeltes lehed asuda ka erinevate domeenide taga.
Alati on olemas võimalus, et mõni link ei tule automaatselt “ilus”. Põhjuseid võib siin olla mitmeid ja nendesse hetkel ei süvene. Ütlen nii palju, et “ilusad” lingid suudab Artio JoomSEF genereerida nendele komponentidele, mille kohta on olemas vastavad laienduste failid. Artio JoomSEF lubab kasutajal endal vajadusel defineerida sobivad “ilusad” lingid.
Esilehekülje- ja vaikimisi keelele vastav aadress näitavad sama sisu
Asi, mis vajab nüüd pisut parandamist, on lehe vaikimisi aadress. Hetkel on meil iga keele jaoks eraldi alamkataloog, kuid juurkataloogile pöördudes näeme sama sisu, mis vaikimisi keeles esilehekülge vaadates. Nii võib tekkida olukord, kus sama sisu on kättesaadav kahe erineva aadressi alt ning robotitele ei pruugi see meeldida. Eriti okkaliseks võib neist minna Google’i oma.
Lahendusena on välja pakkuda väike ja lihtne hack. Template, mida kasutatakse esilehe näitamisel, peab kontrollima, kas käesolevaks pöördumiseks kasutatud link sisaldab käesoleva keele tunnust või ei. Kui ei sisalda, siis suunatakse kasutaja permanent redirect‘iga õigele keele tunnust sisaldavale aadressile.
Kokkuvõte
Lisasime oma veebilehele nüüd ilma erilise vaevata otsimootorite seisukohalt kuldaväärt lisandi – “ilusad” lingid. Artio JoomSEF abil saime “ilusad” lingid veel selliselt, et erinevate keelte jaoks koostatakse need vastava keele arvestusega, mis muudab otsimootorites paremini leitavaks ka võõrkeelsed materjalid. Edasi jääb meil ainult uut kvaliteetset sisu avaldada ning “ilusate” linkide toe võime mõneks ajaks unustada – kui selle toimima saab, siis töötab see kaua ilma tõrgeteta.
Ahjaa, kui “ilusad” lingid on lehel olemas ja toimivad, siis on mõttekas lisada lehele ka mõni statistikateenus nagu näiteks Google Analytics.

22.08.2007 kell 11:56
Robotisõbralikud lingid, okei. vähemalt sama oluline kui mitte olulisem, et need on ka inimsõbralikud lingid, lihtsasti meeldejäävad ja loetavad jne.
22.08.2007 kell 11:59
Jah, seda ma olen oma kirjutistes ka läbivalt raiunud, et ka inimene suudab need aadressid meeles hoida. Erinevalt näiteks Joomla! out-of-boc “ilusatest” aadressidest.
02.10.2007 kell 11:01
Kui muuta URL-id roboti- ja inimsõbralikuks, siis kas jäävad toimima ka vanad lingid? Ehk kui näiteks kusagil viidatakse mõnele minu lehel olevale artiklile pika ja koleda aadressiga, siis kas see link jääb toimima?
04.10.2007 kell 20:02
Jäävad ikka. Vähemasti need parameetritega URL-id. Nendest saab iga SEF komponent aru ning pöördumisel sinna genereerib brauseri jaoks vastava redirecti.
04.10.2007 kell 21:50
Siit blogist innustust saanuna suutsin paraku oma saidi tuksi keerata. Installisin Artio JoomSEF-i, kuid ei saanud seda korralikult toimima ning otsustasin selleks korraks loobuda. Tegin SEF-i nii global configurationis kui komponendis passiivseks, uninstallisin komponendi, muutsin .htaccessi endiseks (tühjaks). Alguses oli kadunud ainult frontend, kuid mingil hetkel kukkus maha ka adminnipool. Hetkeseis selline, et kui .htaccess on olemas saan veateateks:
Forbidden
You don’t have permission to access /index.php on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Kui .htaccess tagasi htaccess.txt -ks ümber nimetada, siis on veateade selline:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@taimo.pri.ee and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Error log ütleb järgmist: error: file is writable by others: (/home/taimopri/public_html/index.php)
Kas on varianti sait uusti ellu äratada?
06.10.2007 kell 12:00
Väga veider tundub see situatsioon. Seni on mul SEF peale ja maha alati kenasti installeerunud. Tee näiteks brauseri cache tühjaks ja vaata lehte siis. Võimalik, et brauser jättis meelde SEF-ile omased lingid ja SEF-i maha keeramisel ei oska server nende linkidega midagi peale hakata.
06.10.2007 kell 12:35
Brauseri cache-ga pole siin midagi pistmist. Erinevatest masinatest vaadates sama seis. Aga no pole hullu. Kui muud üle ei jää, siis teen kasvõi uue Joomla installi ja tõstan sisu mysql tabelitega ümber. Paras nikerdamine saab muidugi olema.
06.10.2007 kell 13:00
Kui SEF on kinni keeratud või maha installitud ja Joomla! enda SEF on väljas, siis ei tohiks mingi valemiga enam “ilusad” URL-id tekkida. Kui sul tekkivad endiselt kuhugi “ilusad” URL-id, siis on asi väga imelik juba. SEF-ide maha keeramisel peaksid tekkima tavalised URL-id, mida Joomla! kasutab.
Ega sul Joomla!-st endast mingi häkkidega versioon pole?
06.10.2007 kell 13:06
Sellest veast: error: file is writable by others
Tundub, et index.php-d saavad kõik kirjutada (chmod 777) ning see ei meeldi serverile. Anna serverile index.php lugemise õigused ainult ja vaata, kas hakkab toimima.
06.10.2007 kell 18:13
Ei ole mul ju mingeid url-e, sest sait on maas.
08.10.2007 kell 18:19
See server error on midagi muud kui SEF-i või Joomla! enda rida, mulle tundub.
16.02.2009 kell 12:06
Kuidas aga seadistada Artio JoomSEF’i toredat komponenti zone.ee serveris, kus .htaccess failile ligipääsu pole. Mida täpsemalt lisada Apache direktiivide alla, et lehte tuksi ei keeraks?
17.02.2009 kell 10:59
Eve, millist zone.ee teenust kasutad? Ja mis tähendab .htaccess failile ligipääsu pole?
20.02.2009 kell 20:36
Zone.ee tasuliste teenustega pole mul seni probleeme tekkinud. Ardi, zone.ee serverid, kus .htaccess juurdepääsu pole, on ehk tasuta teenused?
20.02.2009 kell 23:29
Kõik on korras. Korraks sain veateate 500 Internal Server Error, aga nüüd on korras.
30.05.2009 kell 03:14
On ilmunud värske versioon JoomSEF 3.3.0 Joomla 1.5 jaoks, aga tegu on tasulise komponendiga: €24.99.
30.05.2009 kell 07:02
Neile, kes eelistavad JoomSEF-i, on õnneks saadaval ka tasuta versioon, mis töötab samuti Joomla 1.5 peal.
http://www.artio.net/en/downloads/joomsef-3-x-extensions-free/artio-joomsef-3-2-11/download
30.05.2009 kell 12:25
Ma olen viimasel ajal kasutanud sellist vidinat nagu sh404SEF. Parema jõudlusega ja ei topi päistesse sisse mingeid salareklaame nagu mõned Artio versioonid.
31.05.2009 kell 00:04
Täitsa nõus (Seetõttu ka kirjutasin “Neile, kes eelistavad JoomSEF-i …”). Ise olen kasutanud sama komponenti. (y)
31.05.2009 kell 05:43
Ma sirvisin neid kõiki, aga ei viitsinud jahmerdada ning tegin asja Joomla sisse-ehitet, s.t. Apache mod_rewrite-põhise variandiga korda. mod_rewrite eelis kõigi nende vidinate ees peaks olema paremas jõudluses. Aga SEO mõttes laiemalt on samas miskit vidinat (või vidinaid) Joomla juures ikkagi vaja kasutada, sest kasvõi nt. lk pealkirjade osas on ta väga paendumatu.