четверг, 9 августа 2012 г.

Как создать карту сайта в формате протокола Sitemap

(Это неактуальная уже информация. Обновленную информацию на эту же тему читайте здесь.)

Карта сайта (sitemap) - один из компонентов дружественного поисковикам сайта. Наличие файла карты сайта может помочь поисковикам при сканировании сайта и индексации страниц, так как он содержит информацию о страницах сайта, где они находятся, когда последний раз обновлялись и много другое. Это важный компонент поисковой оптимизации сайта (SEO).

Стандартом карты сайта сейчас является XML-файл в формате протокола Sitemap.

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>http://www.example.com/</loc>
    <lastmod>2005-01-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
</urlset>

Если у вас сайт достаточно часто обновляется, то не имеет смысла создавать такой файл вручную, так на поддержку такого файла потребуется время и усилия и нет гарантий избежать ошибок при его создании.

В Composite C1 CMS существует возможность генерировать такой файл автоматически, "на  лету". Когда поисковый робот обратится к такому файлу, он получит самую свежую его версию.



Для того, чтобы добавить карту сайта в формате протокола Sitemap на сайт Composite C1 CMS, вам нужно установить пакет расширения Composite.Search.SEO.Sitemap.


Установить пакет SEO Sitemap

После установки пакета в корневой папке сайта появится файл с расширением .ashx: Sitemap.ashx.

Это и есть ваш файл карты сайта. Если вы введете в браузере http://ваш_сайт>/Sitemap.ashx (например, http://contoso.ru/Sitemap.ashx), вы получите свежайшую карту вашего сайта в формате протокола Sitemap.

Обратите внимание, что расширение файла  - .ashx, а не .xml, поэтому вам, скорее всего, нужно явным образом указать для поисковиков и поисковых роботов адрес файла карты сайта. (ASHX -  это расширение веб-обработчика ASP.NET.)

Это можно сделать, например, через robots.txt:

Sitemap: http:/contoso.ru/Sitemap.ashx

Содержимое самого файла Sitemap.ashx содержит логику генерации карты сайта, написанную на C#. И если вы сильны в ASP.NET/C# и знаете Composite C1 API, вы можете изменить его, например, расширив охват индексируемого содержимого сайта.

Дело в том, что по умолчанию этот файл генерит карту сайта только для страниц в разделе "Контент". Например, записи в блоге или новости, создаваемые с помощью соответствующих пакетов, в карту сайта не включаются.

Но вы можете это сделать, отредактировав код в файле Sitemap.ashx, добавив поддержку и этих записей.

В этой ветке "Blog posts in the sitemap" (на англ.) предлагается несколько решений для блога (использование RSS-ленты блога, программное получение записей блога из соответствующего типа данных, использование альтернативной карты сайта из проекта Composite C1 Contrib).

Читайте также:

Комментариев нет:

Отправить комментарий