pdoSitemap
Последнее обновление not available | История страницы | Улучшить эту страницу | Сообщить о проблеме
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$204 per month—let's make that $500!
Learn morepdoSitemap это сниппет, который легко создаёт sitemap для поисковых систем (sitemap.xml). Сниппет понимает параметры GoogleSitemap (через перевод в нативные) и может легко его заменить.
Главная особенность: гораздо более высокая скорость по сравнению с GoogleSitemap. На сайте bezumkin.ru с 1700 страницами генерация sitemap ускорилась в 12 раз: с 8.4 секунд до 0.7.
По умолчанию проверка прав пользователя отключена. Можно включить параметром &checkPermissions (замедляет генерацию!):
[[!pdoSitemap?
&checkPermissions=`list`
]]
Генерация sitemap эффективнее, если исключать ресурсы из вывода, а не явно включать только нужные (см. примеры ниже).
Параметры¶
pdoSitemap принимает все параметры pdoTools. Вот некоторые из них:
| Parameter | Default value | Description |
|---|---|---|
| &sitemapSchema | http://www.sitemaps.org/schemas/sitemap/0.9 | Схема для sitemap. |
| &forceXML | 1 | Принудительный вывод как XML. |
| &priorityTV | Необязательное поле с priority ресурса. Указанную TV нужно также добавить в &includeTVs |
Шаблоны¶
&tpl¶
@INLINE <url>\n\t
<loc>[[+url]]</loc>\n\t
<lastmod>[[+date]]</lastmod>\n\t
<changefreq>[[+update]]</changefreq>\n\t
<priority>[[+priority]]</priority>\n
</url>
&tplWrapper¶
@INLINE <?xml version=\"1.0\" encoding=\"[[++modx_charset]]\"?>\n<urlset xmlns=\"[[+schema]]\">\n[[+output]]\n</urlset>
Priority и Change frequency ресурса определяются по дате последнего изменения документа:
| Время с последнего обновления документа | Priority | Change frequency |
|---|---|---|
| Меньше суток назад | 1.0 | daily |
| Больше суток, но меньше недели | 0.75 | weekly |
| Больше недели, но меньше месяца | 0.5 | weekly |
| Больше месяца назад | 0.25 | monthly |
Как создать ресурс sitemap.xml¶
- Создайте документ в корне сайта. На вкладке Document выберите пустой шаблон. Введите «Title» (на ваш выбор) и задайте «Resource Alias» sitemap. Отметьте «Hide From Menus» и «Published».
- На вкладке Settings выберите XML как «Content Type».
- Снимите галочку «Rich Text» и сохраните документ.
- В «Content» документа только вызов сниппета pdoSitemap (см. примеры ниже).
Примеры¶
Для sitemap контекста по умолчанию обычно достаточно:
[[pdoSitemap]]
Sitemap только из указанных контейнеров:
[[pdoSitemap?
&parents=`10`
]]
Расширим пример: исключить ресурсы с id = 15 и 25 вместе с потомками:
[[pdoSitemap?
&parents=`10,-15,-25`
]]
Исключить ресурс с id = 25, но включить его потомков:
[[pdoSitemap?
&resources=`-25`
&parents=`-15,10`
]]
Добавить контекст catalog (если web это контекст по умолчанию):
[[pdoSitemap?
&resources=`-25`
&parents=`-15,10`
&context=`web,catalog`
]]
Принудительно https в URL:
[[pdoSitemap?
&resources=`-25`
&parents=`-15,10`
&context=`web,catalog`
&scheme=`https`
]]
Показать лог выполнения (не забудьте сменить content type ресурса на HTML):
[[pdoSitemap?
&resources=`-25`
&parents=`-15,10`
&context=`web,catalog`
&showLog=`1`
&forceXML=`0`
]]
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$204 per month—let's make that $500!
Learn more










