Быстрый старт: как начать работать с историей инфоблоков
Страница нужна для первого знакомства с модулем. Если модуль уже установлен и требуется быстро запустить рабочий сценарий, достаточно выполнить действия ниже в указанном порядке.
[Скриншот 1: меню модуля и последовательность разделов для первого запуска]
Шаг 1. Определите, что нужно сохранять
В настройках можно независимо включить элементы, разделы и торговые предложения. На обычном контентном сайте чаще всего достаточно элементов и разделов. В интернет-магазине дополнительно оставляют торговые предложения.
Не включайте историю для технических инфоблоков, которые интенсивно обновляются автоматически и не требуют ручного восстановления. Их проще сразу отметить на вкладке «Исключения».
Шаг 2. Настройте правила создания версий
- При добавлении — сохраняется первое состояние нового объекта.
- При сохранении/изменении — создаётся версия после изменения.
- При удалении — состояние сохраняется до фактического удаления, чтобы объект можно было восстановить.
- Только значимые изменения — не создаёт новую версию, если изменились только служебные поля и содержимое фактически осталось прежним.
Шаг 3. Создайте базис
Базис — стартовая версия существующего контента. Создавайте его после того, как исключения и типы сущностей настроены. Для большого сайта запускайте обработку по отдельным инфоблокам: так проще контролировать прогресс и нагрузку.
Шаг 4. Проверьте историю на одном объекте
- Откройте любой тестовый элемент.
- Измените название, текст или свойство и сохраните.
- Перейдите на вкладку «История».
- Откройте сравнение последней версии с предыдущей.
- Проверьте, что «Было» и «Стало» соответствуют внесённым изменениям.
[Скриншот 2: вкладка «История» после изменения тестового элемента]
Шаг 5. Проверьте восстановление
На тестовом объекте выберите более старую версию и выполните откат. После восстановления откройте карточку объекта и убедитесь, что поля и свойства вернулись к ожидаемому состоянию. Само восстановление также фиксируется в истории как отдельное действие.
Шаг 6. Настройте срок хранения
Если оставить значения «0», версии не ограничиваются по возрасту и количеству. Для рабочего проекта это может привести к постоянному росту таблиц и файлов. Обычно задают хотя бы одно ограничение: срок в днях или количество последних версий на объект.
Служебная очистка запускается агентом примерно раз в сутки. Поэтому изменение лимита не означает мгновенного удаления старых записей.
Рабочий сценарий редактора
- Редактор изменяет элемент или раздел обычным способом.
- Модуль автоматически сохраняет новое состояние.
- Если возник вопрос, редактор или администратор открывает вкладку «История».
- Для анализа используется «Сравнить».
- Если правка ошибочная, пользователь с достаточными правами выбирает «Откатить».
- При необходимости вся история объекта открывается в общем журнале.
Рабочий сценарий администратора перед массовыми изменениями
- Убедитесь, что у затрагиваемых объектов есть базис или актуальная последняя версия.
- При необходимости сделайте экспорт выбранных версий.
- Выполните массовое обновление.
- Проверьте новые версии через поиск или общий журнал.
- Если результат не устраивает, восстанавливайте нужные объекты по сохранённым версиям.
[Скриншот 3: общая история с действиями «Просмотр», «Сравнить», «Восстановить»]
Когда версии не появляются
- тип сущности выключен в общих настройках;
- инфоблок находится в списке исключений;
- выключено создание версии для соответствующего действия;
- включены только значимые изменения, а фактических изменений полей/свойств нет;
- модуль не может загрузить текущий объект или служебные таблицы недоступны.
В такой ситуации первым делом откройте «Диагностику» и «Настройки», затем повторите изменение на тестовом объекте.
Пример: исправление ошибочной правки
Редактор изменил описание товара и через несколько часов выяснилось, что в тексте пропал важный блок. Откройте карточку товара → «История», найдите версию до изменения, нажмите «Сравнить» и убедитесь, что это нужное состояние. После этого выполните откат. Не нужно вручную копировать старый текст по частям — модуль восстанавливает сохранённый снимок.
Пример: восстановление удалённого объекта
Если для удаления включено создание версии, перед удалением сохраняется снимок. Найдите запись DELETE по ID объекта через общий журнал или поиск, откройте «Сравнить с текущим». Страница увидит, что текущая сущность отсутствует, и пользователь с правом записи сможет запустить восстановление.
Как понять, что история настроена слишком широко
- в диагностике быстро растёт число версий без заметного объёма редакторских правок;
- в топе инфоблоков лидируют технические данные, которые обновляются роботами;
- в истории много последовательных UPDATE без реальных отличий;
- объём файлов растёт быстрее, чем содержимое сайта.
В этом случае проверьте исключения, режим значимых изменений и необходимость версионирования конкретных сущностей.
Как понять, что история настроена слишком узко
Если после удаления или изменения объекта нет версии, которая нужна для восстановления, проверьте флажки «при добавлении/изменении/удалении» и список исключений. Для критичных инфоблоков обычно лучше хранить чуть больше истории, чем обнаружить отсутствие снимка уже после ошибки.