Переиндексация сайта на 1с-Битрикс по расписанию

Автор Damir-Tote. Опубликовано в Битрикс

Переиндексацию поискового индекса у товаров на 1с-Битрикс можно осуществлять в ручном режиме. Это делается довольно простым способом. Заходим в «Настройки», выбираем «Поиск» и «Переиндексация». Запускаем переиндексацию. Но данный метод подойдет лишь в том случае, если база данных загружается в ручную и достаточно редко. Но когда в интернет магазине осуществляется импорт товаров каждый день выше описанную процедуру придется выполнять ежедневно. Это не совсем то, что бы хотелось на самом деле. Чтобы переиндексация сайта с товарами происходила автоматически по расписанию необходимо сделать две вещи — написать скрипт для переиндексирования и настроить его работу по расписанию. Об этом и пойдет речь далее.

Для начала следует заняться скриптом. Функция для переиндексации CSearch::ReIndexAll может принимать четыре параметра. В случае принятия значения true первым параметром индекс поиска будет очищен полностью на первом этапе. Значение false приведет к пересмотру только тех элементов содержимое которых было изменено.
Если значение второго параметра больше нуля и время на протяжении которого выполняется функция превысит значение указанное в данном параметре работа функции будет прекращена и данные, что будут результатом ее работы возвращаются для начала выполнения следующего шага.

Третий параметр выше представленной функции предназначен для сбережения состояния прогресса индексации на начало пути. Последний, то есть четвертый параметр не является обязательным поскольку с его помощью чистится история подсказок для поисковой строки. По умолчанию он равняется значению false. После создания скрипта с использованием упомянутой функции для переиндексации сайта на CMS Битрикс его необходимо поместить в файл /bitrix/php_interface/init.php.Переиндексация сайта на 1с-Битрикс по расписанию

Теперь можно переходить к второму заданию, а именно к настройке его выполнения. Для этого нужно создать агента. Делается это в панели администратора на странице «Настройки» далее «Инструменты» и «Агенты». Добавляем нового агента. В параметрах присутствуют следующие поля:

  • дата последнего запуска — данное время отображается при редактировании агента;
  • время/дата следующего запуска — это время начала работы агента, если он не является периодическим, то в указанное время будет выполнена его работа только один раз;
  • модуль — указывает на автоматическое подключение файла /bitrix/modules/ID модуля/include.php, только необходимо для начала убедится в том, что функция-агент функционирует после подключения представленного модуля;
  • функция агента — тут речь идет о функции переиндексации, другими словами указывается ее имя, которое было обозначено в скрипте;
  • ID пользователя — представляет собой фильтр выполнения для конкретного пользователя;
  • интервал — интервал выполнения агента в секундах, можно установить восемьдесят шесть тысяч секунд, что будет ровняться ровно одним суткам.

Вот такими являются основные параметры в настройках агента для выполнения работы скрипта в Битриксе. В выше описанном примере переиндексация сайта будет осуществляться один раз в сутки, то есть каждый день. Задание не является таким уж сложным, особенно для тех, кто немного разбирается в веб программировании. Благодаря подобному решению вопроса уже не надо будет утруждать себя ежедневным выполнением лишней работы, то есть постоянно настраивать переиндексацию поиска в ручном режиме, как было упомянуто в самом начале. 1c Битрикс представляет собой достаточно гибкую систему управления контентом сайта в которой можно решать различные вопросы практически любой сложности.

Если Вы уже имеете сайт на медицинскую тематику, то Вам возможно будет интересно узнать, что компания Паньшин Групп, которая отлично разбирается в продвижении медицинских сайтов поможет Вам быстро вылезти в ТОП поисковых систем.