Документация для разработчиков

Create

mixed
  CSiteMap::Create(
	string site_id,
	array max_execution_time,
	array NS,
array arOptions = array()
);

Создание карты сайта в формате Google Sitemap.

Создание всегда происходит в пошаговом режиме. Нестатический метод.

Параметры метода

Параметр ОписаниеС версии
site_id Идентификатор сайта для которого будет создаваться карта.
max_execution_time Элемент этого массива с индексом 0 задает максимальное время одно шага в секундах. А с индексом 1 - максимальное количество записей поискового индекса (рекомендовано задавать не более 5000).
NS Начало шага. Передается результат, возвращенный предыдущим вызовом этого метода.
arOptionsНеобязательный параметр. Если содержит ключ FORUM_TOPICS_ONLY со значением Y, то при установленном модуле форума в Sitemap попадут не все сообщения, а только те которые начинают новую тему на форуме. Причем дата модификации будет равна дате добавления последнего сообщения в данную тему.7.0.3

Возвращаемое значение

  • false - в случае возникновения ошибки.
  • true - успешное создание карты.
  • array - требуется еще один вызов метода.

Примеры использования

Построение карты сайта из сценария вызываемого в cron'е.

<?
//подключение модуля поиска
if(CModule::IncludeModule('search'))
{
//В этом массиве будут передаваться данные "прогресса". Он же послужит индикатором окончания исполнения.
$NS=Array();
//Задаем максимальную длительность одной итерации равной "бесконечности".
$sm_max_execution_time = 0;
//Это максимальное количество ссылок обрабатываемых за один шаг.
//Установка слишком большого значения приведет к значительным потерям производительности.
$sm_record_limit = 5000;
do {
$cSiteMap = new CSiteMap;
//Выполняем итерацию создания,
$NS = $cSiteMap->Create("ru", array($sm_max_execution_time, $sm_record_limit), $NS);
//Пока карта сайта не будет создана.
} while(is_array($NS));
}
?>


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Дмитрий Фатыхов
Для https
$arOptions = array('USE_HTTPS' => 'Y');
© «Битрикс», 2001-2019, «1С-Битрикс», 2019
Наверх