Событие “OnBeforeSitemapIndexFileGeneration” вызывается перед генерацией главного файла sitemap.xml, когда уже все sitemap-файлы сформированы, и получает список всех sitemap-файлов.
Может быть полезно, если в главный файл sitemap.xml нам нужно добавить дополнительные файлы, например от других модулей.
Получает параметры:
ID - ID sitemap.
FILES - Массив сформированных файлов.
Пример использования:
$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
'luxar.sitemap',
"OnBeforeSitemapIndexFileGeneration",
['LuxarSitemapEventes', 'handlerOnBeforeSitemapIndexFileGeneration']
);
class LuxarSitemapEventes {
public static function handlerOnBeforeSitemapIndexFileGeneration($event) {
$arParam = $event->getParameters();
$sitemapId = $arParam['ID'];
$sitemapFilesList = $arParam['FILES'];
if ($sitemapId == 1) {
/*
* Что-то делаем со списком, например, добавляем еще файлы
*/
$sitemapFilesList[] = 'https://site.ru/sitemap_one.xml';
$sitemapFilesList[] = 'https://site.ru/sitemap_two.xml';
$sitemapFilesList[] = 'https://site.ru/sitemap_three.xml';
$result = new \Bitrix\Main\EventResult(
\Bitrix\Main\EventResult::SUCCESS,
$sitemapFilesList
);
return $result;
}
}
}
События модуля |
Описание курса
| Событие “OnAfterSitemapGeneration”
|