Как скрыть от индексации все страницы определенного типа
Материал из Umicms
Версия от 16:25, 19 марта 2014; Mad grant (обсуждение | вклад)
Актуально для версии 2.9.5
Задача
Есть несколько вариантов решения данной задачи:
- 1) проставить у каждой страницы галочку "не индексировать"
- 2) проставить галочку "не индексировать" у раздела, чтобы его подразделы скрылись от индексации
- 3) на сайте не выводить ссылки на эти страницы и убрать их из sitemap по статье Исключение_из_sitemap.xml_страниц_с_определенным_типом
Но каждый способ имеет значительные минусы:
- 1) если страниц будет очень много, то robots может разрастись до больших размеров, после чего не будет приниматься поисковыми системами
- 2) если у Вас есть страница товара, у к ней дочерние страницы фотографий, которые нужно скрыть, то Вы же не будете ради этого скрывать сам товар
- 3) как показывает практика, какими-то способами поисковые системы все равно находят страницы
Самый надежный способ что-либо скрыть от индексации, это robots.txt.
Решение
Мы сделаем так, чтобы в uri любой добавляемой страницы заданного типа, например страницы фотографии, добавлялось определенная строка, например "noindex", а потом зададим в robots регулярное выражение, которое закроет от индексации любую страницы, в адресе которой будет содержаться эта строка.
Пример
1) Для изменения uri мы воспользуемся событийной моделью UMI.CMS и напишем обработчик для события