1с битрикс настройка sitemap
Благодаря расширенному функционалу рассматриваемой CMS, мы можем сгенерировать карту сайта всего в несколько кликов.
Итак, для начала, выясним, для чего необходим sitemap.xml или как говорится в народе - карта сайта? Прежде всего, это внутренняя оптимизация сайта. В карту сайта, выносятся все существующие страницы на сайте, учитывая указания в файле robots.txt. В данном файле, указывается следующие параметры:
- Дата создания страницы
- Адрес страницы
- Приоритет
- Частота обновления страницы (данная вещь по умолчанию не настроена в функционале, поэтому используется крайне редко)
Данные параметры будут полезны, если:
- На страницу нет ссылок, но она есть
- Ваш сайт содержит большое количество страниц
- Сайт имеет плохую индексацию
- Просто будет полезно
Каждая поисковая система описывает, что карта сайта - является чуть-ли не обязательным параметром.
Генерация Sitemap.xml в Битрикс
Скажу сразу, что мы будем рассматривать на примере продукта "1С Битрикс: Управление сайтом 16", в более ранних версиях, интерфейс и путь могут слегка отличаться (например, с 13 или 14 версией). Разработчики заранее побеспокоились об оптимизации, и вставил в функционал системы генерацию карты сайта в автоматическом режиме. Для того, что бы воспользоваться данным функционалом, перейдем по следующему пути: Панель администратора => Маркетинг => Поисковая оптимизация => Настройка sitemap.xml
Жмем добавить (в случае многосайтовости, выбираем сайт который нам необходим).
В первой вкладке выбираем основные настройки, обязательно необходимо указать в последнем поле sitemap.xml (или просто, оставить дефолтные настройки). Так-же не забываем указывать "Добавить правило в Robots.txt после генерации", это будет указывать поисковым роботам о том, что у нас есть карта сайта, и укажет, где именно она находится.
Далее мы переходим к следующей вкладке, которая отвечает за настройку файлов и структуру сайтов. Под файлами, подразумеваются такие страницы, как contacts.php (Контакты), about.php (О нас) и другие страницы, которые размещены не как разделы, а именно отдельные страницы. Тут довольно просто, можно разобраться без наглядного примера.
Следующая вкладка, это настройка Инфоблоков. Самая основная часть, скажем так.
В данной вкладке, мы настраиваем информационные блоки, которые будут указаны в карте сайта. Многие даже не открывают данную вкладку, что является грубой ошибкой. Обязательно проверьте наличии технических информационных блоков (например, для вывода контактов, или другой технической, вспомогательной информации) и проверьте на наличие тестовых блоков. Например, если вы покупали готовое решение, то могли не заметить, либо намеренно оставить демонстрационные данные. Ни в коем случае не стоит допускать того, что бы данная информация вошла в поисковый индекс.
Стоит отметить, что система сделана таким образом, что она формирует карту для каждого блока по отдельности, а в общем файле sitemap.xml, указывает ссылку на каждый блок. Методом экспериментов было выявлено, что данная структура не на столько эффективна, если на вашем сайте не большое количество страниц. В таком случае, проще будет обратиться к онлайн-генераторам. Если же у Вас большой объем информации, то данный вид будет довольно удобным, так как информация будет структурированной и поисковому роботу не придется загружать один длинный список адресов.
Генерация Google Sitemap
Генерация Google Sitemap происходит гораздо проще. Следуем по пути - Административная панель => Настройки => Поиск => Google Sitemap. Жмем "Создать" и все. Карта доступна по адресу /sitemap_index.xml
Добавление карты сайта в кабинеты для вебмастеров
Это поможет ускорить индексацию вашего сайта. А залог успеха - это правильная и быстрая индексация страниц поисковыми системами.
В этой статье я опишу процесс кастомизации sitemap на сайте под управлением 1С-Битрикс. Некоторое время назад я столкнулся с такой задачей и сейчас вы узнаете, как я ее решил.
Перед выполнением этой большой задачи, я разделил ее на несколько более мелких подзадач на основе следующих требований технического задания:
В процессе выполнения этой задачи мне очень помогла статья «Автогенерация карты сайта sitemap.xml с помощью crontab». Спасибо автору за нее.
Шаг 1. Создаем новую карту сайта в админке сайта. Также не забудьте ее настроить – указать какие статические страницы должны в ней присутствовать, а какие – нет. То же касается и динамической информации (инфоблоков и их секций).
Позже нам понадобится ее идентификатор, который в данном случае равен 3 .
Шаг 2. Отключаем пересоздание карты сайта в инфоблоках. Это нужно сделать для того, чтобы карта сайта создавалась с минимальной нагрузкой на сервер и не генерировалась при каждом изменении в элементах инфоблоков. Для этого есть полезный скрипт, код которого я нашел в упомянутой выше статье. Вот ссылка на него. Просто загрузите его на сайт и вызовите в браузере. Когда он отработает вы просто увидите надпись «OK» на экране. Скрипт отключает обработчики событий для инфоблоков, которые связаны с обновлением sitemap xml битрикс.
Обращаю внимание, что если вам захочется «откатить» изменения и вернуть все как было просто замените в коде название метода unRegisterEventHandler на registerEventHandler и запустите скрипт.
Шаг 3. Переходим непосредственно к заданиям. Создаем в папке /local/php_interface/ папку crontab и в ней размещаем файл seo_sitemap_run.php . Этот файл мы позже будем запускать по расписанию. Он и будет формировать нашу карту сайта (sitemap). Обращаю ваше внимание, что файл этот в стандартном виде находится в папке /bitrix/modules/seo/admin/ . Мы будем использовать файл который вы можете скачать по ссылке. Этот файл я взял из архива, который скачал по ссылке из упомянутой выше статьи и внес небольшие изменения. Вы, конечно, можете скопировать его из ядра системы, но придется вносить много изменений и можно будет легко запутаться и получить неработоспособный код с ошибками.
Содержимое стандартного файла довольно большое – на момент написания статьи в нем содержится чуть больше 1000 строк кода, поэтому размещать его в статье я не буду. В общих чертах в нем происходит следующее:
> Подключаются все необходимые классы и модули bitrix.seo и bitrix.iblock . Далее берется карта сата по ее идентификатору. Настройки карты сохраняются в массив SETTINGS (в нем сохраняются данные, которые мы указали на вкладках «Файлы» и «Инфоблоки» в админке сайта). На основе него сначала формируется sitemap xml битрикс по файлам затем по инфоблокам. Все карты сайта сохраняются по разным файлам. При формировании sitemap используется таблица b_seo_sitemap_runtime в БД продукта. Также обрабатываются и форумы. Информация из них также добавляется в 1с битрикс sitemap.
Для выполнения наших задач, нужно вносить изменения в файлы модуля bitrix.seo , а это ядро продукта, которое должно быть неизменно, да и при обновлениях все изменения сотрутся. Можно, конечно, создать копию модуля и работать с ним, но это неудобно и сложно. После небольших раздумий был найден способ лучше. Я просто создал классы наследники тех классов, методы которых мне нужно было изменить.
Я разместил их в файле sitemap_custom.php в той же папке /local/php_interface/crontab
Классы, от которых я наследовался для внесения изменений следующие: SitemapFile и SitemapRuntime .
Для выполнения задания из пункта 2 в классе SitemapFileCustom (наследник SitemapFile ) я внес изменения в константу ENTRY_TPL. Как оказалось – это было самое простое задание.
В первую очередь, коротко расскажем, зачем нужна карта сайта, то есть sitemap.xml. Его основная задача напрямую связана с внутренней оптимизацией. Именно в этот файл вносятся все страницы, с учетом указаний robots.txt. А именно, следующих важных параметров:
- когда была создана страница;
- URL ссылка на страницу;
- уровень приоритета;
- с какой частотой происходит обновление.
Заметим, что последний параметр не имеет настройки по умолчанию, в связи с чем, практически, не используется. Для остальных параметров найдется применение в следующих случаях:
- страница существует, но на нее нет прописанных ссылок;
- на сайте содержится много страниц;
- индексация сайта оставляет желать лучшего и т.д.
Добавляем sitemap.xml в кабинет вебмастера
После генерации карты сайта ее необходимо внести в кабинет вебмастера. Естественно, предварительно добавив туда свой сайт. Приведем адреса для поисковых систем, где необходимо внести запись:
Добавление карты сайта в кабинет существенно отражается на скорости индексации сайта, а, следовательно, обеспечивается и быстрая индексация страниц поисковой системой, что является залогом успешного продвижения. Собственно, поисковые системы описывают карту сайта, практически, как обязательный параметр, а к этому стоит прислушаться.
Создание sitemap.xml
Чтобы создать sitemap.xml, перейдите на вкладку “Администрирование” в панели управления сайтом, а затем откройте раздел “Настройки”/“Поиск”/Google Sitemap:
Далее вам предстоит заполнить несколько полей на странице “Параметры создания”. Обратите внимание на то, что в целом достаточно выбрать сайт, остальные параметры можно не менять:
авторизоваться на сайте сервиса;
подтвердите право собственности на сайт:
После того, как вы выполните действия, описанные выше, в папке сайта появятся три новых файла:
sitemap_index.xml (файлы, которые будут индексировать поисковые роботы);
sitemap_errors.xml (перечень ошибочных ссылок);
sitemap_000.xml (файл, в котором сохраняются ссылки):
Настройка sitemap.xml
Для настройки sitemap.xml нужно открыть старниц “Настройки”/“Настройка продукта”/“Настройка модулей”/“Поиск”/“Индексация”. Здесь доступны самые разнообразные настройки, в том числе и “Маска исключения” — поле, в котором прописываются страницы, не требующие индексации:
Сохраните изменения и нажмите на кнопку “Переиндексация сайта”, а затем кликните на “Переиндексировать” на открывшейся странице:
С помощью Карты сайта (sitemap) веб-мастеры могут сообщать поисковым системам о веб-страницах, которые доступны для сканирования.
Карта сайта представляет собой файл – sitemap.xml, в котором перечислены адреса веб-сайта в сочетании с метаданными, связанными с этими адресами – например, дата последнего изменения страницы. Это позволяет поисковым системам более грамотно сканировать сайт.
Как создать файл sitemap.xml?
В Битрикс24.Сайты сам файл sitemap.xml создается автоматически при включении опции добавления страницы в карту сайта.
Для этого нужно выбрать сайт 1 и перейти в пункт меню Посмотреть страницы 2 :
В списке страниц сайта выбрать страницу, затем в Действиях 3 выбрать Настроить 4 :
В настройках страницы включить опцию Добавить страницу в карту сайта:
Все готово. Теперь любая публикация данной страницы будет автоматически изменять дату последнего изменения этой страницы в файле sitemap.xml.
Чтобы все страницы сайта попали в файл sitemap.xml, нужно в настройках каждой страницы включить опцию Добавить страницу в карту сайта.Как проверить файл sitemap.xml?
Проверить наличие файла sitemap.xml и записей в нем можно так – перейдите по адресу [адрес_вашего_сайта]/sitemap.xml :
Если отобразится ошибка – значит вы что-то сделали не так, например не сохранили настройки страницы или опубликовали страницу после включения опции. Попробуйте, отключить опцию в настройках сайта, опубликуйте страницу, а потом включите опцию обратно.
Читайте также: