Sunday, 24. February 2008, 22:32:57
Cały czas szukałem po stronach internetowych jakiegoś wydajnego narzędzia do tworzenia sitemap dla googla w xml'u. Chyba najtrudniejszym rozwiązaniem było wpaść na to, że najlepiej zrobić takowe narzędzie samemu, a przecież to takie oczywiste, po co zawracać sobie głowę szukaniem po stronach gdzie limit to ok. 500 stron.
Moja mapka po zapisaniu zajmuje prawie 7 mega więc troszkę więcej niż te 500 stron a wystarczyło chwilkę nad tym posiedzieć i to zrobić.
No to zacząłem od standardu czyli:
<urlset
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"
>
nie znam się aż tak bardzo na xml, a zależało mi na tym żeby to było szybko zrobione i byleby działało więc wpakowałem standardy które były umieszczone w sitemapie jakiejś starej stworzonej przez
http://www.sitemaps.org.
Dodałem stronki, które są statyczne i nie są wyświetlane w połączeniu z bazą danych a więc:
<url>
<loc>http://pobierzmp3.pl</loc>
</url>
<url>
<loc>http://pobierzmp3.pl/style.css</loc>
<lastmod>2008-01-16T14:43:19+01:00</lastmod>
</url>
<url>
a resztę pobrałem z bazyza pomocą pętelek np.
## wyswietlanie wszystkich mp3 ##
$zmienna = mysql_query("SELECT * FROM `tabela_z_petli`");
while ($row = mysql_fetch_array($zmienna)) {
$tytul = tytul($row['tytul']);
print '<url>
<loc>http://pobierzmp3.pl/mp3,'.$row['id'].','.$tytul.'.html</loc>
</url>
';
}
no i reszta stronek potraktowana taka sama pętelką i wyszło.
no więc po co szukać jak to można zrobić w kilka chwil..
EDIT:
Jeszcze muszę troszkę popracować bo odczytałem w specyfikacji, że w mapie może znajdywać się tylko 50.000 url'i a potem trzeba dzielić mapę wg schematu:
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd"
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>http://pobierzmp3.pl/sitemap1.xml</loc>
<lastmod>2008-02-16T18:23:17+00:00</lastmod>
</sitemap>
<sitemap>
<loc>http://pobierzmp3.pl/sitemap2.xml</loc>
<lastmod>2008-02-16T18:23:17+00:00</lastmod>
</sitemap>
</sitemapindex>
i w tych sitemap1.xml, sitemap2.xml itd wstawiamy już własciwe mapy z maximum 50.000 urlami