Советы по картам сайта

8258a629a74297947b38a551d5b139336542446b

Один из ключевых моментов в стратегии поисковой оптимизации веб-сайтов заключается в индексации. Все страницы сайты должны быть проиндексированы. Карты сайта предлагают действительно простой способ для оптимизаторов добавить информацию в поиск.

Советы по картам сайта

Я встречал сайт интернет-магазина, который забанен в Яндексе, а собственник не знал по какой причине. Причина в 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>