Один из ключевых моментов в стратегии поисковой оптимизации веб-сайтов заключается в индексации. Все страницы сайты должны быть проиндексированы. Карты сайта предлагают действительно простой способ для оптимизаторов добавить информацию в поиск.
Советы по картам сайта
Я встречал сайт интернет-магазина, который забанен в Яндексе, а собственник не знал по какой причине. Причина в 20 миллионах страниц, доступных поиску. Добавляйте в индекс (sitemaps) только то, что важно. Остальное закрывайте «роботом».
Кратко. Многие забывают, что максимальное количество строк в одном файле карты 50k, а максимальный размер составляет 10 мегабайт.
Автоматизируйте наполнение файлов sitemap. Я могу поделится собственным кодом. Например:
<?php header('Content-type: text/xml'); require_once("config.php"); $date = date("Y-m-d"); $host = $_SERVER['HTTP_HOST']; echo '<?xml version="1.0" encoding="UTF-8"?>'; echo '<?xml-stylesheet type="text/xsl" href="http://'.$host.'/sitemap.xsl"?>'; ?><urlset > <url> <loc>http://<?php echo $host?>/</loc> <lastmod><?php echo $date?></lastmod> <changefreq>daily</changefreq> <priority>1</priority> </url> <url> <loc>http://<?=$host;?>/contacts.html</loc> <lastmod><?=$date;?></lastmod> <changefreq>daily</changefreq> <priority>0.7</priority> </url> <url> <loc>http://<?=$host;?>/skidki.html</loc> <lastmod><?=$date;?></lastmod> <changefreq>daily</changefreq> <priority>0.7</priority> </url> <?php $r = mysql_query("SELECT `uri` FROM `pages` WHERE `published`='y'"); while($row = mysql_fetch_assoc($r)){ $uri = $row['uri']; echo "<url> <loc>http://$host/$uri.html</loc> <lastmod>$date</lastmod> <changefreq>daily</changefreq> <priority>0.5</priority> </url> "; } $r = mysql_query("SELECT `id`, `uri` FROM `sections` WHERE `published`='y'"); while($row = mysql_fetch_assoc($r)){ $id = $row['id']; $uri = $row['uri']; $section[$id] = $uri; echo "<url> <loc>http://$host/$uri.html</loc> <lastmod>$date</lastmod> <changefreq>daily</changefreq> <priority>0.8</priority> </url> "; } $r = mysql_query("SELECT `id_sections`, `uri` FROM `goods` WHERE `published`='y'"); while($row = mysql_fetch_assoc($r)){ $id_sections = $row['id_sections']; $uri = $section[$id_sections].'/'.$row['uri']; echo "<url> <loc>http://$host/$uri.html</loc> <lastmod>$date</lastmod> <changefreq>daily</changefreq> <priority>0.7</priority> </url> "; } ?> </urlset>