Кастомизируем создание sitemap на сайте под управлением 1С-Битрикс
В этой статье я опишу процесс кастомизации sitemap на сайте под управлением 1С-Битрикс. Некоторое время назад я столкнулся с такой задачей и сейчас вы узнаете, как я ее решил.
Перед выполнением этой большой задачи, я разделил ее на несколько более мелких подзадач на основе следующих требований технического задания:
- В файле должны быть указаны все уникальные и каноничные страницы, отдающие 200 код ответа сервера, которые не закрыты в robots.txt , не содержат HTTP-заголовок X-Robots-Tag noindex , не содержат мета-тег robots noindex .
- В файле sitemap.xml приоритет для всех страниц должен быть 0.5 (
0.5 ). Частоту обхода при изменениях ( changefreq ) оставить weekly . - Ссылка на sitemap.xml должна быть указана в файле robots.txt (Это стандартная возможность Битрикса)
- Файл sitemap.xml должен формироваться автоматически. Обновление должно происходить раз в сутки.
В процессе выполнения этой задачи мне очень помогла статья «Автогенерация карты сайта 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. Как оказалось – это было самое простое задание.
Для выполнения пункта 1 пришлось изменить метод addEntry . В нем я добавил проверку входит ли текущая запись в секцию Dissalow файла robots.txt. Если входит, то она не попадает битрикс файл sitemap.
public function addEntry($entry) < $arDisallowRules = $this->getRobotsRulesList(); $entryMdf = $this->replaceProtoHost(self::PROTO_HOST, $entry['XML_LOC']); if(!in_array($entryMdf, $arDisallowRules))< if ($this->isSplitNeeded())< $this->split(); $this->addEntry($entry); > else< if (!$this->partChanged)< $this->addHeader(); > $this->putContents( sprintf( self::ENTRY_TPL, Converter::getXmlConverter()->encode($entry['XML_LOC']), Converter::getXmlConverter()->encode($entry['XML_LASTMOD']) ), self::APPEND ); > > >Также добавить пару вспомогательных методов ( getRobotsRulesList и replaceProtoHost ):
• getRobotsRulesList - Получаем список url из robots.txt по типу ( Disallow / Allow )/** * Получаем список url из robots.txt по типу * @param string $type = Disallow / Allow * * @return array */ protected function getRobotsRulesList($type='Disallow')< $robotsFile = new RobotsFile($this->settings['SITE_ID']); $allRulesArr = $robotsFile->getRules($type); $arRulesUrls = Array(); if(count($allRulesArr) > 0)< foreach($allRulesArr as $k=>$al) < $arRulesUrls[] = $al[1]; >> return $arRulesUrls; >• replaceProtoHost - является просто «оберткой» над PHP функцией str_replace . Она удаляет из url протокол и хост.
/** * Обертка над фукнцией str_replace * Удаляет из url протокол и хост * */ protected function replaceProtoHost($search, $subject)
Кроме описанного выше класса я также создал наследника класса SitemapRuntime с именем SitemapRuntimeCustom , но в процессе работы выяснилось, что вносить в него изменения не требуется. Я не стал от него отказываться, оставил на всякий случай.
Переходим к файлу seo_sitemap_run.php , который мы разместили в /local/php_interface/crontab . Если воспользовались ссылкой на этой файл, указанной выше в статье, то никаких изменений вносить не нужно.
Давайте рассмотрим основные моменты этого скрипта, на которые нужно обратить внимание:
• в самом начале $_SERVER['DOCUMENT_ROOT'] переопределена - это нужно для корректного запуска скрипта через cron.
• далее устанавливаем значение служебных констант Битрикса и настроек PHP для этого скрипта:
define('NO_KEEP_STATISTIC', true); define('NOT_CHECK_PERMISSIONS', true); define('NO_AGENT_STATISTIC', true); define('STOP_STATISTICS', true); define('BX_CRONTAB_SUPPORT', true); define('LANGUAGE_ID', 'ru'); error_reporting(E_ERROR | E_WARNING | E_PARSE); ini_set('display_errors', 1); ini_set('memory_limit', '512M'); @set_time_limit(0); @ignore_user_abort(true);• файл с кастомизированными классами SitemapFileCustom и SitemapRuntimeCustom должен быть подключен
require_once('sitemap_custom.php');• Проверка прав пользователя на использование модуля bitrix.seo не должна проводится, также не должна использоваться в скрипте функция check_bitrix_sessid() . Причина в том, что при запуске по cron он производится от неавторизованного пользователя, которого не будет прав на совершение операции seo_tools. В стандартном варианте скрипт запускается из админки и у пользователя права есть. Функция check_bitrix_sessid() используется при отправке формы, а при запуске по расписанию никакая форма не отправляется.
/*if (!$USER->CanDoOperation('seo_tools')) < $APPLICATION->AuthForm(Loc::getMessage("ACCESS_DENIED")); >*/Чтобы проверять результат в процессе работы можно вызывать файл в браузере с параметрами action=sitemap_run и идентификатором карты сайта ID (в нашем случае Пример вызова: /local/php_interface/crontab/seo_sitemap_run.php?action=sitemap_run&ID=3&lang=ru
Это будет работать, если в указанных папках отсутствует файл .htaccess с запретом доступа ( Deny From All ). Обращаю внимание, что отсутствие подобного файла на боевом сайте является угрозой безопасности.
По требованиям технического задания ссылка на sitemap.xml должна быть указана в файле robots.txt . Как я уже упоминал выше – это стандартная возможность модуля bitrix.seo , поэтому нам делать ничего для этого не нужно.
После проведения операций, описанных в шаге 3 можно сказать, что задача почти выполнена. Осталось только настроить расписание запуска скрипта seo_sitemap_run.php . Предположим, что нужно генерировать карту сайта каждый день в 00:00.
Шаг 4 . Если вы используете виртуальный хостинг, то добавить запуск скрипта по расписанию (cron), вы сможете в личном кабинете хостинга.
Если же у вас выделенный сервер по управлением Unix-системы, вы можете добавить задание через консоль следующим образом:
При этом запустится редактор по-умолчанию Например, в Битрикс ВМ это Vim. Чтобы перейти в режим вставки нажимаем 'i', вводим команду:
0 0 * * * /usr/bin/php -f /home/bitrix/www/local/php_interface/crontab/seo_sitemap_run.php action=sitemap_run lang=ru
нажимаем «Esc», для сохранения вводим команду «:wa», для выхода «:q».Для проверки списка установленных задач можно выполнить команду в консоли:
После проведения действий, описанных выше, можно утверждать, что наша задача выполнена. Мы кастомизировали в битрикс автогенерацию sitemap и настроили расписание для ее запуска.
Карта сайта Sitemap
С помощью Sitemap пользователи и поисковые роботы могут быстро определить, где расположены необходимые для индексации страницы. Помимо этого, карта помогает оценить важность страниц по отношению к другим документам, узнать о периодичности и времени последнего изменения с наименьшим количеством переходов. Наконец, Sitemap - это инструмент для более эффективной индексации ресурса.
Зачем еще нужна Sitemap
Все поисковики вносят веб-страницы в индекс постепенно. Индексация начинается с главной страницы и завершается документами с глубокой вложенностью (в зависимости от краулингового бюджета сайта). Для ускоренной индексации необходимо создать файл Sitemap.
На небольших сайтах для перехода к любому документу достаточно сделать всего два-три клика. А вот крупные сайты содержат тысячи страниц и отличаются сложной структурой. Без Sitemap на таких ресурсах будет сложно ориентироваться и посетителям, и поисковым ботам.
Итак, можно выделить три ситуации, которые тормозят индексацию. Именно в таких случаях необходима карта сайта:
- большое количество страниц;
- сложная структура сайта;
- отсутствие бэклинков на важные для индексации страницы.
Использование карты не является гарантией того, что все перечисленные в ней страницы будут проиндексированы поисковиками. Sitemap - это всего лишь рекомендация для поисковых роботов, как более рационально сканировать документы.
Рекомендуемые решения



Виды карт
Существует три формата Sitemap, рассмотрим подробнее каждый из них.
HTML - это страница сайта со ссылками на статьи и разделы. HTML-карта обладает древовидной структурой с указанием раскрытых разделов и подразделов и создается в основном для пользователей.
У HTML-карты есть определенный лимит на количество ссылок, доступных к размещению. При превышении этого количества многие ссылки не попадают в поиск либо вся страница «вылетает» из выдачи. Поэтому никогда не злоупотребляйте ссылками, даже внутренними.
Мы рекомендуем указывать в карте не более 200 ссылок. Такого количества достаточно для размещения важных разделов и подразделов, при этом поисковые системы смогут легко проиндексировать Sitemap, а посетителям будет удобно воспринимать ее содержание.
При создании HTML-файла обратите внимание на следующие нюансы:
- Структура содержания. Важно, чтобы пользователю было легко ориентироваться в карте сайта и находить контент.
- Ссылочные анкоры. Пропишите название каждой ссылки, чтобы пользователи сходу могли примерно понять о чем будет страница, на которую они собираются перейти.
- Доступность ссылки. Как правило, карту сайта размещают в футере - так она будет доступна на каждой странице.
HTML-карта не настолько значима для поисковых машин, чтобы ее можно было считать полноценным инструментом для продвижения.

Этот файл формата .xml находится в корневой директории сайта. Если HTML-карта предназначена для живых посетителей, то XML-карта, вмещающая до 50 000 линков, упрощает работу поисковых ботов. Кроме того, файл дает возможность выставлять приоритетность документов и частоту их обновлений. Формат .xml поддерживается всеми известными поисковиками.

Отметим, что XML-карта носит лишь рекомендательный характер, поэтому боты могут ей не следовать. Например, при установленной раз в месяц частоте обновлений для одной из страниц роботы, скорее всего, будут обходить ее, следуя собственному плану.
У структуры этого вида Sitemap - свой определенный порядок.
Здесь есть три обязательных тега:
- - родительский тег, внутри которого указываются все УРЛы;
- - тег, где заключается информация об одном определенном URL-адресе;
- - здесь содержится непосредственно УРЛ.
Все остальные - необязательные теги:
- в нем указывается дата последнего обновления документа;
- здесь сообщается приоритет конкретной веб-страницы относительно других документов: начинается от 0,1 (самый низкий приоритет), и заканчивается 1 (наивысший приоритет);
- тег указывает частоту изменения документа: never (никогда), yearly (ежегодно), monthly (ежемесячно), weekly (еженедельно), daily (ежедневно), hourly (каждый час), always (всегда).
Также в файле sitemap.xml необходимо прописать команды, которые указывают на пространство имен языка XML:
Если вы собираетесь разместить в карте более 50 000 ссылок или если размер файла превысил 10 МБ, то его следует поделить на несколько отдельных XML-файлов. В таком случае необходимо указать ссылки на каждую карту:
Тут вы можете заметить уже вышеупомянутые теги (обязательный) и (необязательный), а кроме них еще пару обязательных:
- тег, где указываются данные для всех файлов Sitemap в формате XML;
- родительский тег, куда прописываются УРЛы всех карт сайта.
Как правило, в современных системах управления сайтом для формирования XML-карт используются стандартные инструменты CMS.
Оформить карту сайта можно, создав файл в текстовом формате txt с перечнем важных для индексации ссылок. Таким способом часто пользуются вебмастера, которые хотят сэкономить время и усилия.

В TXT-карте также можно разместить 50 000 ссылок, однако в ней не предусмотрена возможность указать приоритетность документов и время последнего изменения.
- http://site.com/;
- http://site.com/page1/;
- http://site.com/page2.
Какую карту выбрать и можно ли выбрать только одну
Поскольку сайт должен быть удобным и для пользователей, и для поисковых ботов, вам пригодятся два вида карты. Для пользователей желательно сделать HTML-карту, а для поисковиков вы можете выбрать - XML или TXT.
Какие требования к Sitemap предъявляют Яндекс и Google
Можно выделить несколько общих требований, которые выдвигают к Sitemap два наиболее востребованных поисковика:
- Обязательное использование UTF-8 кодировки.
- Лимит на количество URL-адресов - до 50 000 ссылок.
- Если размер файла превышает 10 МБ, поделите его на несколько карт и пропишите их все в файле индекса Sitemap.
- При обращении к карте сайта правильным ответом сервера должен быть - 200 ОК.
- Допускаются только канонические URL документов без идентификаторов сессий или GET-параметров.
- Перечисленные в файле ссылки должны вести на домен, где расположена сама карта. Это требование кажется элементарным, однако многие вебмастера при переносе шаблона с файлом Sitemap забывают менять ранее созданные ссылки на актуальные.
Помимо перечисленного, у поисковых систем есть свои уникальные требования.
Яндекс ограничивает размер файла 10 мегабайтами, при этом допуская использование Url-адресов с кириллицей.
Google допускает создание карт размером до 50 МБ. В работе используется только латиница и цифры. Для перекодировки кириллических доменов можно применить Punycode.
Чтобы снизить требования к пропускной способности канала, используется архиватор gzip. Отметим, что указанные размеры в 10 и 50 МБ - это размеры карты до сжатия.
Влияние Sitemap на продвижение
Следует заметить, что без карты ресурс не теряет позиций в выдаче. Индексация происходит даже при отсутствии Sitemap.
Сегодня поисковые машины могут эффективно сканировать страницы и включать их в выдачу даже без карты сайта. Теоретически поисковикам не требуется посторонняя помощь, однако время от времени в работе роботов случаются сбои, из-за которых они не могут просканировать все страницы. Причиной может быть:
- Глубокая вложенность определенных разделов, для перехода на которые пользователю необходимо пройти по многим ссылкам.
- Динамические URL.
Таким образом, вебмастерам следует помогать поисковикам.
Создание карты сайта позволяет избежать нарушений в работе поисковых роботов. Sitemap опосредованно влияет на эффективность SEO-продвижения ресурса, поскольку помогает роботам быстро находить и включать в выдачу страницы.
Наличие карты также снижает риск того, что конкуренты смогут украсть контент и разместить его у себя, выдавая за оригинальный. Благодаря Sitemap страницы и вовремя попадут в поиск.
Как создать карту сайта
Здесь все зависит от вашей CMS. Если у вас сайт на WordPress, то вы можете настроить HTML-карту разными способами. Можно сделать это с помощью плагина Hierarchical HTML Sitemap и его аналогов. Скачайте плагин для вашей CMS, установите его и активируйте надстройку для установки файла. Затем разместите шорткод (его выдаст плагин) на той странице, где будет подключена карта.
Файл Sitemap будет доступен по адресу http://site.com/sitemap.html.
Для других движков есть такие решения:
- Drupal - плагин Sitemap;
- Joomla! - плагин OSMap.
Пользователям OpenCart можно не заниматься созданием HTML-карты, поскольку она автоматически генерируется самой CMS.
Для сайтов на «Битрикс» есть специальные модули и плагины, которые автоматически сгенерят карту сайта.
Также вы можете самостоятельно создать HTML-документ со всеми необходимыми ссылками - подойдет для опытных пользователей и небольшого сайта. Или воспользоваться сервисом SiteMap Generator. Позволяет сформировать сразу несколько видов карт, но бесплатно - лишь для сайтов до 500 страниц.
Для создания XML-карты выберите один из способов. Вы можете:
- Сформировать карту с помощью CMS (движка). У движка должна быть соответствующая встроенная функция, чтобы вы могли применять плагины и модули.
- Скачать платный ПО-генератор. Благодаря таким программам (например, WonderWebWare SiteMap Generator) можно создавать XML-карты для нескольких ресурсов сразу.
- Скачать карту онлайн-генератором. У каждого из множества сервисов есть свои возможности и ограничения. Например, на сайте xml-sitemaps.com можно настроить множество параметров карты, однако в самом файле разрешается размещать не более 500 ссылок.
- Подключить карту вручную.
Остановимся на ручном подключении более подробно.
Подключение с помощью онлайн-генератора
У этого способа есть весомое преимущество - отсутствие привязки к CMS. Применяя онлайн-генератор, вы можете сделать карту для сайтов на любых движках и даже для статических HTML-сайтов.
Однако у генерации есть и недостаток: у бесплатных сервисов есть лимит на количество страниц. Они больше подходят для сайтов-визиток с минимальным количеством страниц.
Если на ресурс постоянно добавляется новый контент, то бесплатные генераторы не подходят. Они не обновляют карту, следовательно, новые URL-адреса не появляются и файл теряет актуальность.
К наиболее востребованным онлайн-генераторам относятся:
Подключение с помощью плагинов для CMS
Это более удобный по сравнению с бесплатными генераторами способ, поскольку функциональные плагины позволяют изменять параметры карты. Кроме того, благодаря особым надстройкам файл автоматически обновляется после добавлени новых документов, а поисковые системы получают уведомление.
Чтобы настроить карту в Bitrix, зайдите в раздел «Сервисы», кликните «Поисковая оптимизация» и выберите «Настройки sitemap.xml».

В «Настройках» задайте протокол для адресов веб-страниц http или https. При SSL-шифровании выбирайте https, чтобы адреса в карте сайта соответствовали основному протоколу.

Зайдите в раздел «Файлы» и выберите блоки, которые необходимо проиндексировать и указать в XML-карте. Проследите за тем, чтобы исключить служебные страницы.

Перейдите на вкладку «Инфоблоки» - она отвечает за доступные для индексации разделы инфоблоков. Воспользуйтесь автогенерацией, если в инфоблоке регулярно появляются новые страницы. Теперь при размещении новой страницы в разделе Sitemap будет обновляться автоматически.

Для WordPress подходит плагин Google XML Sitemaps и др. Для установки воспользуйтесь функцией «Плагин - Добавить новый».
Завершив установку, зайдите в «Настройки - XML-Sitemap» и заполните все нужные настройки.

Обновление
Если вы вносите в карту изменения, то вам не нужно ее удалять и снова загружать. Боты часто проверяют карты на обновления и наличие ошибок. Просто кликните на значок ручного обновления, чтобы боты могли обойти файл.
Как создать sitemap в битрикс
Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы ( Marketplace > Обновление платформы ).
Ограничений нет
Файл карты сайта sitemap.xml в "1С-Битрикс: Управление сайтом" создаётся автоматически. С помощью специальной формы вы можете легко указать какие страницы, форумы, элементы и разделы каких инфоблоков Информационный блок - сущность, создаваемая Контент-менеджером при работе с модулем Информационные блоки. Также имеет краткое название — Инфоблок. Инфоблоки — это пакеты однородной информации.
Подробнее. должны быть проиндексированы.
Примечание: генератор карты сайта пришел на смену устаревшему инструменту Google Sitemap Google Sitemap - простой инструмент управления доставкой информации о страницах сайта в базу данных поисковой системы Google.
Подробнее . , который оставлен в системе для совместимости и на тот случай, если не установлен модуль Поисковая оптимизация).
Видеоурок
Создание карты сайта

Управление настройками генерации карт сайтов осуществляется на странице Настройка sitemap ( Маркетинг > Поисковая оптимизация > Настройка sitemap.xml ). С помощью кнопки Добавить выбирается сайт, для которого необходимо настроить sitemap.xml. После чего открывается форма добавления настройки генерации:

На закладке Настройки задаются общие настройки карты. Пояснения требует только одно поле: Добавить правило в robots.txt после генерации. Это поле позволяет добавить ссылку на файл карты сайта в robots.txt. Если ссылка на карту сайта уже есть в файле robots.txt и адреса совпадают, то опция может быть отмечена, дублирование правил не произойдет.
На закладке Файлы задаются файлы и папки (то есть статические страницы Статическая информация - это редко изменяемая информация, которая выводится непосредственно в тексте самой страницы сайта вручную контент-менеджером.
Подробнее. сайта), которые должны быть проиндексированы. Данные правила будут храниться в отдельном файле, который подключается к sitemap.xml и, соответственно, обновляется одновременно с ним. Имя этого файла задается в поле Имя файла карты сайта с данными о файлах:

Выберите представление структуры сайты, с которым вам удобнее работать (логическая или файловая структура). Затем в структуре сайта отметьте только те файлы и папки, которые должны быть проиндексированы. Проиндексированы будут все файлы, которые удовлетворяют маскам включения, заданным в поле Включаемые файлы.
На закладке Инфоблоки настраивается какие данные из каких инфоблоков должны попадать в индексацию. Если данные из инфоблока должны индексироваться, то соответствующие инструкции будут храниться в отдельном файле. Имя этого файла будет формироваться по шаблону, заданному в поле Шаблон имени файла карты сайта с данными инфоблоков, и сам файл также будет подключаться к главному файлу карты сайта.

В столбце Инфоблок перечислены все инфоблоки сайта, для которых можно установить следующие опции:
- Автогенерация - карта сайта автоматически обновляется при добавлении, обновлении или удалении элементов и секций инфоблока (при этом в настройках инфоблока должна быть разрешена индексация его разделов и элементов). Актуально для работы с инфоблоками любым штатным способом.
- Список - в карту сайта будет добавляться адрес индексной страницы инфоблока, который берется из настроек инфоблока
. Опция неактивна, если адрес страницы инфоблока не задан. - Секции - определяет, должны ли быть проиндексированы разделы инфоблока. Опция неактивна, если в настройках инфоблока не задан адрес страницы раздела или инфоблок не может содержать разделы (определяется настройками его типа). Если эту опцию не отметить для инфоблока, то индексироваться будут не все разделы инфоблока, а только выбранные. Для выбора разверните структуру инфоблока (по стрелочке
На закладке Форумы указываются форумы, которые должны быть проиндексированы. Для каждого индексируемого форума создается отдельный файл, в котором содержатся записи о его темах. Имя этого файла будет формироваться по шаблону, заданному в поле Шаблон имени файла карты сайта с данными форумов, и сам файл также будет подключаться к главному файлу карты сайта.

В столбце Форумы перечислены все форумы сайта, для которых можно установить следующие опции:
- Автогенерация - карта сайта будет автоматически обновляться при добавлении, обновлении или удалении сообщений/тем форума.
- Темы - при переиндексации в файл попадают последние 100 тем. Если опция не отмечена, то при переиндексации в файл попадает только одна последняя тема форума.
Когда все правила для построения карты заданы, то вы можете нажать кнопку Сохранить, чтобы сохранить настройку без генерации файлов. Чтобы сразу запустить процесс генерации карты сайта, следует нажать кнопку Сохранить и запустить.

Генерацию карты сайта всегда можно выполнить по сохраненной настройке со страницы со списком настроек. Для этого воспользуйтесь кнопкой Запустить в строке с необходимой настройкой или в меню действий выберите Запустить .
После того, как процесс генерации карты сайта закончится, на странице будет выведено соответствующее сообщение и в системе будут созданы все необходимые файлы.
Документация по теме
- Настройка sitemap
- Создание и редактирование настройки генерации sitemap
Битрикс разработчикам как создать карту сайта (sitemap.xml)
В новых версиях Битрикса, к сожалению не могу найти начиная с какого релиза, для создания карты сайта, можно воспользоваться модулем "поисковая оптимизация" во вкладке "сервисы".
В Битрикс 16.5.8 же, нет модуля "поисковая оптимизация".
Для генерации карты сайта (sitemap.xml) нужно воспользоваться инструментом "Google Sitemap", он расположен в Настройки - Поиск - Google Sitemap

Прямая ссылка https://SITE.ru/bitrix/admin/search_sitemap.php?lang=ru
Сама генерация происходит в файле /bitrix/modules/search/classes/general/search.php
