MODx/Подключаемые сниппеты/Sitemap
Описание
[править]Sitemap — это сниппет для MODx, который даёт возможность автоматически создавать так называемый Sitemap Вашего Сайта. Данный XML-файл дает поисковой системе представление о Вашем Сайте. Проще говоря, файл Sitemap - это список страниц вашего веб-сайта. Создание и отправка файла Sitemap позволяют обеспечить наличие данных в поисковой системе обо всех страницах на вашем сайте, включая URL-адреса, которые невозможно обнаружить в ходе стандартного процесса сканирования поисковым роботом. В настоящее время Sitemap используется поисковыми системами Google и Яндекс.
Параметры
[править]- &format
- отвечает за установку формата файла
- Значения
- sp - для Google sitemap с использование Sitemap Protocol формата (XML).
- txt - на выходе список URLs в виде текста.
- По умолчанию
- sp - Google sitemap.
- &startid
- позволяет указать какая часть сайта будет помещенеа в sitemap.
- Значения
- integer - ID документа с которого начнется sitemap.
- По умолчанию
- 0 - корень сайта.
- &priority
- позволяет добавлять приоритетность документов.
- Значения
- string - The name of the template varialbe.
- По умолчанию
- sitemap_priority - Not used if the template variable specified will not be found.
- Example of template variable
- Input type: Dropdown list.
- Input option values:
[php,N]5==1.0||4==0.7||3==0.5||2==0.3||1==0.0
You may use more or less values if you wish. - Default value: 0.5
- &changefreq
- Позволяет установить частоту обновления для каждого документа на сайте (только для Sitemap Protocol).
- Значения
- string - Имя переменной шаблона (The name of the template variable).
- По умолчанию
- sitemap_changefreq - Not used if the template variable specified will not be found.
- Example of template variable
- Способ ввода: Выпадающее меню.
- Возможные значения:
[php,N]Always==always||Hourly==hourly||Daily==daily||Weekly==weekly||Monthly==monthly||Yearly==yearly||Never==never
- Значение по умолчанию: monthly (ежемесячно) Выглядит разумно.
- &excludeTemplates
- Позволяет исключить документы, использующие определённый шаблон.
- Значения
- string - Разделённые запятыми номера шаблонов (Comma-separated list of document template names).
- По умолчанию
- null - Ничего не исключается.
- &excludeTV
- Allows to exclude documents with use of a template variable. Setting the value for this template variable to 1 will exclude the document from the sitemap. This setting is independet of &excludeTemplates.
- Значения
- string - The name of the template variable.
- По умолчанию
- sitemap_exclude - Not used if the template variable specified will not be found.
- Example of template variable
- Способ ввода: Выпадающее меню.
- Input option values:
[php,N]Include==0||Exclude==1
- По умолчанию: 0.
- &excludeWeblinks
- Исключает внешние ссылки из карты сайта ( Exclude weblinks from the sitemap).
- принимаются двоичные значения (Accepts a boolean value)
Инструкции
[править]Установка
[править]1) Скачайте исходный код ( версия 1.0.11 ).
2) Войдите в панель администрирования ModX под Администратором
3) Далее перейдите Ресурсы-> Управление ресурсами-> Сниппеты (Resources->Manage resources->Snippets)
4) Создайте новый сниппет «sitemap» через менеджер сайта и скопируйте/вставьте содержимое скачанного файла в поле для кода.
5) Сохраните
Настройка
[править]1) Создайте документ в корне сайта
2) Установите в настройках страницы "Шаблон" (blank)
3) Установите в настройках страницы "Тип содержимого" text/xml
4) Если редактор контента включен (TinyMCE) отключите его
5) Установите "Псевдоним" = sitemap.xml
6) Вставте в "Содержимое страницы" [!sitemap? &format=`sp`!]
7) Обновите сайт
8) Проверьте содержание созданного Sitemap. Введите в строку браузера http://your_site.com/sitemap.xml
Внимание! Сниппет не создаёт физически файла sitemap.xml на Вашем сайте (можете убедиться в этом, зайдя на сайт любым FTP-менеджером). Информация из sitemap.xml доступна только при прямом обращении к нему http://your_site.com/sitemap.xml. Поэтому, чтобы поисковые системы могли использовать информацию sitemap.xml, необходимо им об этом сообщить. Сделать это можно следующими способами:
1) На странице управления Ваших Сайтов в Инструментах для веб-мастеров Google или в сервисе Яндекс.Вебмастер в разделе "Файлы Sitemap" укажите имя файла sitemap. В обязательном порядке указывайте название файла sitemap в точности такое же, какое указали в "Псевдониме" и подставляйте полный путь к корню сайта, например вот так http://your_site.com/sitemap.xml 2) В файл robots.txt добавьте следующую строку |
Исключаем нежелательные документы
[править]Исключить можно двумя путями
- Исключение через шаблоны документов.
- Исключение через TV.
Оба правила применяются одновременно! Это означает, что, если Вы не исключаете документ шаблоном, это может быть исключено переменной шаблона. Также не имеет никакого смысла прилагать эту переменную шаблона к шаблонам, которые должны быть исключены из sitemap. Вы можете также исключить Weblinks полностью.
По шаблону
[править]Используем параметр
&excludeTemplates значения параметра перечисляем через запятую. Допустим у нас на сайте используются шаблоны blank, empty и hidden.
Следующим кодом они будут исключены
[!sitemap? &format=`sp` &excludeTemplates=`blank, empty, hidden`!]
Начиная с версии 1.0.8, также можно исключать документы по ID шаблона (сделано для того случая если шаблоны будут переименованы в ходе разработки).
[!sitemap? &format=`sp` &excludeTemplates=`blank, empty, hidden, 3, 4`!]
По TV
[править]Используем параметр
&excludeTV
Соответственно, документы имеющие TV sitemap_exclude равные 1 будут исключены
[!sitemap? &format=`sp` &excludeTV=`sitemap_exclude`!]
Исключаем документы-ссылки
[править]( начиная с версии 1.0.6)
Булевой параметр excludeWeblinks исключает документы-ссылки из sitemap, так как они часто ведут на сайты, которые не являються составной частью Вашего сайта или указывают на страницы Вашего сайта которые уже присутствуют в sitemap. Если этого не делать, Google Webmaster Tools будет ругаться!
[!sitemap? &excludeWeblinks=`1` !]
Устанавливаем документу приоритет и измененяем частоты
[править]Приоритет
[править]Google sitemap protocol позволяет устанавливать документам приоритет, по отношению к другим. Низкий приоритет 0.0, наивысший 1.0, значение по умолчанию 0.5.
Данное значение НЕ сравнивает между собой страницы с разных ресурсов, оно лишь указывает поисковой машине какие страницы Вашего сайта являются более важными нежели другие Using the sitemap protocol |
Данный параметр является необязательным. Используется параметр &priority для каждого документа отдельно.
Пример ниже показывает как устанавливается с помощью TV sitemap_priority:
[!sitemap? &format=`sp` &priority=`sitemap_priority`!]
Изменяем частоту
[править]Google sitemap protocol позволяет устанавливать частоту, с которой документ изменяется. Данный параметр также НЕ является приказом к частому обновлению, а является рекомендацией. Исходя из этого может возникнуть ситуация, когда бот будет чаще обновлять стрницы у которых параметр частоты измения установлен на годичный, чем тот у которого параметр изменения установлен ежечасный Using the sitemap protocol
&changefreq
TV sitemap_changefreq
[!sitemap? &format=`sp` &changefreq=`sitemap_changefreq`!]
Примеры Вызова (eng)
[править][php,N][!sitemap!]
Will
- include all published documents from the whole site;
- will exclude documents with the template variable named sitemap_exclude set to 1;
- will use Sitemap Protocol format (XML);
- and will set change frequency and priority for documents if template variables with default names (sitemap_changefreq and sitemap_priority) exist.
[php,N][!SiteMap? &format=`txt` &startid=`28`!]
Will
- output a plain text list
- with URLs of all published documents
- being descendants of document with ID 28.
[php,N][!SiteMap? &excludeTemplates=`blank, hidden` &excludeTV=`hide`!]
Will
- output a sitemap in Sitemap Procotol format;
- will exclude documents using blank and hidden templates;
- will exclude documents with the template variable named hide set to 1;
- will include documents from the whole site;
- and will set change frequency and priority for documents if template variables with default names (sitemap_changefreq and sitemap_priority) exist.
Дополнительно
[править]- Автор
- Grzegorz Adamiak (grad)
- Version
- 1.0.8
- Тип лицензии
- LGPL
- MODx
- 0.9.2.1
История версий (eng)
[править]- # 1.0.6
- - Optional parameter to exclude weblink from sitemap
- # 1.0.5
- - Non-searchable documents now excluded from sitemap
- # 1.0.4
- - Added option to display as HTML list (ul/li)
- # 1.0.3
- - Added ability to specify a URL for the XSL
- # 1.0.2
- - Reworked fetching of template variable value to get INHERITED value.
- # 1.0.1
- - Reworked fetching of template variable value, now it gets computed value instead of nominal; however, still not the inherited value.
- # 1.0
- - First public release.
Ссылки
[править]- Страничка проекта на сайте MODx
- http://modx.com/extras/package/sitemap
- Ветка форума (англ.)
- http://modxcms.com/forums/index.php?topic=5754
- Справка по работе с файлами Sitemap в Google
- http://www.google.com/support/webmasters/bin/topic.py?topic=8476
- Справка по работе с файлами Sitemap в Яндексе
- http://help.yandex.ru/webmaster/?id=1007070