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));
}
?>
© «Битрикс», 2001-2025, «1С-Битрикс», 2025