Поиск
Последние записи:
- Нестандартные шрифты для сайта. Использование и рецепты.
- Определение региона посетителя сайта
- Команды работы с сервером для web-разработчика
- Настройки TinyMCE в MODx
- Как выбрать хостинг для сайта?
- CSS хаки. Особенности кроссбраузерной верстки.
- Уязвимости e107
- Установка DISQUS на сайт. Внешняя система комментариев
- Новогодний подарок для разработчиков сайтов
- 301 Редирект на Ucoz и не только…
Самое популярное:
- MODx Revolution vs MODx Evolution
- Дублирование контента в MODx
- Мета-теги и заголовки MODx
- Карта сайта и google sitemap в MODx
- Как подключить lightbox
- Проблема c кодировками MODx
- Мета-теги в MODx 1.0.2
- RSS лента на MODx
- CSS хаки. Особенности кроссбраузерной верстки.
- Установка DISQUS на сайт. Внешняя система комментариев
Мета
Категории:
Полезное
Архив
Карта сайта и google sitemap в MODx
Категория 22 августа 2009 in MODx
Каждый сайт, содержимое которого обновляется достаточно динамично, неплохо дополнять картой сайта в формате xml. Также хорошим тоном является составление карты сайта для пользователей. Поисковые системы их тоже «любят». Рассмотрим, как это можно сделать в MODx.
Карта сайта в формате HTML
Для создания карты сайта, как правило, необходимо создать специальную страницу, используя шаблон, который вы считаете для нее наиболее подходящим. Затем вызвать сниппет Wayfinder, например следующим образом:
[[Wayfinder? &startId=`0` &level=`0` ]]
Сниппет Wayfinder входит в список поставляемых вместе с CMS сниппетов и идеально подходит для решения задачи создания карты сайта. Отмечу только то, что по умолчанию страницы, у которых не стоит флаг «показывать в меню» не включаются в карту сайта. Чтобы исправить ситуацию, надо вызвать Wayfinder с параметром &ignoreHidden=1:
[[Wayfinder? &startId=`0` &level=`0` &ignoreHidden=`1` ]]
Для решения этой задачи можно использовать сниппет sitemap с кодом вызова:
[[sitemap? &format=`ulli`]]
Об этом сниппете речь пойдет дальше, но его использование для составления HTML карты сайта может оказаться неудобным, т.к. сниппет не имеет расширенных возможностей по оформлению карты по сравнению с Wayfinder.
Google sitemap для MODx
О google sitemap можно почитать . Сгенерировать карту сайта можно с помощью различных online сервисов, например . Файл sitemap.xml придется обновлять после добавления или удаления страниц сайта. Для редко обновляющихся сайтов такое решение может оказаться приемлемым, но в большинстве случаев желательно создать динамически обновляющуюся карту сайта.
Динамическую карту сайта можно сделать, используя сниппет Ditto или специальный сниппет sitemap. Найти его в Интернете стоило немалых усилий, поэтому я раместил его у себя на сайте, сохранив информацию о разработчике.
Сниппет sitemap работает несколько быстрее Ditto, его мы и рассмотрим. Для его установки необходимо создать сниппет sitemap и скопировать в него содержимое этого файла.
Для того чтобы сгенерировать карту сайта, нужно следующее:
1) Создать TV параметры sitemap_changefreq и sitemap_priority
sitemap_changefreq
Тип: DropDown List Menu
Возможные значения : always||hourly||daily||weekly||monthly||yearly||never
Значение по умолчанию : поставьте наиболее актуальный для вашего сайта период обновления (например weekly).
sitemap_priority
Тип: DropDown List Menu
Возможные значения : 0.1||0.2||0.3||0.4||0.5||0.6||0.7||0.8||0.9||1
Значение по умолчанию :0.5 (можете поставить любое другое).
2) Создать новый документ в корне сайта
3) Установить «Псевдоним» = sitemap.xml (Семантические URL должны быть включены)
4) Выбрать шаблон «(blank)» в настройках документа-общие
5) Если HTML-редактор контента включен, отключить его
6) Выбрать тип содержимого «text/xml’ в настройках страницы
7) Вставить в «Содержимое страницы»
В контент внести [[sitemap]]
9) Обновить сайт.
Возникает вопрос: как исключить из google sitemap некоторые страницы. Сниппет sitemap поддерживает два способа исключения документов:
- по TV-параметру
Необходимо создать TV-параметр sitemap_exclude типа DropDown List Menu с возможными значениями 0||1 и значением по умолчанию 0 для всех шаблонов. Далее выбрать для него значение 1 на всех страницах, которые не должны отображаться в карте сайта.
- по имени шаблона
В вызове можно указать шаблоны или идентификаторы шаблонов страниц, которые не должны отображаться в карте сайта. Код вызова будет примерно таким:
[[sitemap? &excludeTemplates=`myTemplateName,3,4`]]
Я немного доработал скрипт, теперь он на главную страницу сайта не выдает ссылку с псевдонимом, что помогает избежать дублирования контента главной страницы
14 Ответов на “Карта сайта и google sitemap в MODx”
Оставить комментарий
Вы можете подписаться на RSS ленту комментариев.



февраля 16, 2010 at 21:26
А как вы справляетесь если включены ЧПУ, и получается документ типа http://www.8chudo74.ru/sitemap.xml.html
февраля 18, 2010 at 23:23
это хорошо но а как сделать для 1-0-2 версии этот вариант у меня неработает
февраля 21, 2010 at 20:54
to Олег: Теме дублирования контента посвящен отдельный пост.
Там описано, как избежать URL вида xml.html .
февраля 21, 2010 at 20:56
to ignore: А какую ошибку выдает?
Я использую этот скрипт и на 1.0.2.
апреля 20, 2010 at 12:21
Ошибка синтаксического анализа XML: лишние данные после элемента документа
Адрес: http://pickup-perm.ru/sitemap.xml.htm
Строка 2, символ 1:Warning: Unterminated comment starting line 1 in /storage/home/srv20820/pickup-perm.ru/manager/includes/document.parser.class.inc.php(770) : eval()’d code on line 1
^
апреля 20, 2010 at 12:22
не работает карта у меня
апреля 20, 2010 at 17:35
Да, в сниппете была ошибка, сейчас я обновил файл и теперь все должно быть ок.
июня 24, 2010 at 15:08
не работает
Priority
Change Frequency
Просто не выводит эти поля и все
июня 25, 2010 at 21:23
Если вы назвали TV-паарметы по-своему то в вызове сниппета надо указать соответственно:
&changefreq=`Ваше название`, &priority=`Ваше название`
января 17, 2011 at 23:51
Макс, может просто указать шаблоны, которые могут использовать этот параметр?
августа 31, 2011 at 10:05
Блин, выдает ошибку http://konez-sveta.com/sitemap.xml
Можете подсказать в чем причина?
сентября 1, 2011 at 1:09
Ошибку видел, почему возникла сказать не могу.
сентября 5, 2011 at 22:56
Все отремонтировал. Важно в шаблоне выбрать именно blank
октября 7, 2011 at 13:31
Использую MODX Revolution 2.1.3-pl (traditional)
Подключил сниппет sitemap, создал TV параметры sitemap_changefreq и sitemap_priority (не нашел «DropDown List Menu», поставил «Список (одиночный выбор) — Listbox (Single-Select)»).
Создал страницу sitemap с типом содержимого XML, в «Соедержимое ресурса» (с отключенным HTML-редактором) вписал [[sitemap]].
И… ничего
Открывается девственно чистая страница 
Почему? Как поправить?
to Эдик, какую версию MODx вы используете и как подключали sitemap?