Omnoho lepšie riešenie pre vyhľadávače ako mapa webu je vlastný sitemap. Spoločnosť Google poskytuje možnosť vytvoriť si na stránke Sitemap Protocol, ktorý informuje robotov o každej URL na vašej webstránke, ktorá je k diszpozícií pre indexovanie.
Napísal som jednoduchú triedu v PHP pre zostavenie tohto protokolu. Ide v podstate len o zoznam URL adries v XML súbore. Ku každej URL môžete podľa uváženia uviesť dodatočné informácie ako dátum poslednej modifikácie, frekvenciu zmien a prioritu. Hotový príklad si môžete prezrieť: sitemap.xml.gz. Moje skúsenosti so sitemapou sú veľmi dobré, pretože ihneď po navštívení robota boli všetky moje URL zaindexované čo je skvelý výsledok.
Pokiaľ ešte nemáte na stránke mapu webu v XHTML formáte, môžete použiť XSLT pre transformovanie XML súboru na dokonale prelinkovanú mapu webu.
PHP kód:
Zdrojový kód triedy:
index.phps
Vytvorenie inštancie
Triedu môžete použiť nasledovne pre generovanie zoznamu URL:
<?php
include_once('sitemap.php'); // zahrnutie triedy
$google = new Sitemap(); // vytvorenie instancie
// ulozenie URL adries, ktore chcete mat v zozname sitemapy
$google->url = array(
0 => array('http://www.example.com/ümlat.html&q=name','2005-01-01','monthly','0.8'),
1 => array('http://www.example.com/catalog?item=12&desc=vacation_hawaii',null,'weekly'),
2 => array('http://www.example.com/catalog?item=73&desc=vacation_new_zealand','2004-12-23','weekly'),
3 => array('http://www.example.com/catalog?item=74&desc=vacation_newfoundland','2004-12-23T18:00:15+00:00',null,'0.3'),
4 => array('http://www.example.com/catalog?item=83&desc=vacation_usa','2004-11-23')
);
$google->Output('url'); // XML vystup komprimovany pomocou Gzipu
?>
URL musíte vkladať ako pole do pola
$object->url[] = array(loc,lastmod,changeFreq,priority);
Kľúče v poli sa rozpoznávajú takto:
- loc - URL, ktoré chcete aby vyhľadávač zaindexoval.
- lastmod - dátum podľa normy ISO 8601.
- changeFreq - always,hourly,daily,weekly,monthly,yearly alebo never
- priority - povolené sú hodnoty od 0.0 do 1.0 (základná hodnota je 0.5); priorita sa rozdeľuje len medzi vaše URL
Triedu môžete použiť nasledovne pre generovanie zoznam URL s ďalšími mapami:
<?php
include_once('sitemap.php'); // zahrnutie triedy
$google = new Sitemap(); // vytvorenie instancie
// ulozenie URL adries, ktore chcete mat v zozname sitemapy
$google->map = array(
0 => array('http://www.example.com/sitemap1.xml.gz','2005-01-01'),
1 => array('http://www.example.com/sitemap2.xml.gz',null),
2 => array('http://www.example.com/sitemap3.xml.gz','2004-12-23'),
3 => array('http://www.example.com/sitemap4.xml.gz','2004-12-23T18:00:15+00:00'),
4 => array('http://www.example.com/sitemap5.xml.gz','2004-11-23')
);
$google->Output('map'); // XML vystup komprimovany pomocou Gzipu
?>
URL pre sitemapy musíte taktiež vkladať ako pole do pola
$object->url[] = array(loc,lastmod);
Kľúče v poli sa rozpoznávajú rovnako ako v predchádzajúcom prípade.
Aby robot mohol nájsť vašu sitemapu musíte mu poskytnúť jej URL vyplnením formuláru na adrese https://www.google.com/webmasters/sitemaps/ po prihlásení k vášmu Google Account.
Trieda je poskytovaná v GNU/GPL licencií, takže ju môžete ľubovolne použiť pre svoju stránku.
Komentáre