Версионирование схемы — Откат изменений группы полей | Field Forge - Произвольные поля, созданные для скорости
Скачать Войти

Версионирование схемы — Откат изменений группы полей

Почему версионирование группы полей имеет значение

WordPress имеет историю ревизий для записей (с версии 2.6). Каждое редактирование записи сохраняется как ревизия, и редакторы могут вернуться к любой предыдущей версии. Это настолько основополагающе для WordPress, что никто больше не задумывается об этом — это просто ожидается.

Группы полей этого не имеют. В ACF, SCF, Meta Box, CMB2, Carbon Fields, Pods, Toolset и каждом другом крупном плагине для пользовательских полей редактирование группы полей является разрушительной операцией. Вы сохраняете изменения, и предыдущее состояние исчезает. Если вы случайно удалите поле, вы не сможете его восстановить. Если изменение сломало шаблон, вы не сможете откатить.

Field Forge решает эту проблему с помощью таблицы ревизий: wp_fieldforge_revisions. Каждое сохранение группы полей создает новую ревизию. Вы можете просмотреть разницу между любыми двумя ревизиями и восстановить любую предыдущую версию одним кликом.


Как это работает

Каждое сохранение создает ревизию

Когда вы сохраняете группу полей в визуальном редакторе Field Forge, плагин:

  1. Сериализует текущее состояние группы полей (поля, настройки, правила расположения) в JSON
  2. Вычисляет хэш содержимого (MD5) JSON
  3. Проверяет, имеет ли последняя ревизия тот же хэш (чтобы избежать дублирующих ревизий при «сохранении без изменений»)
  4. Если отличается, создает новую строку ревизии в wp_fieldforge_revisions с:
  • group_id (группа полей, которая версионируется)
  • revision_data (сериализованный JSON)
  • revision_hash (MD5 JSON)
  • user_id (кто внес изменения)
  • created_at (метка времени)
  • change_summary (необязательная заметка о том, что изменилось)

Это происходит при каждом сохранении, автоматически.

Просмотр истории ревизий

В визуальном редакторе Field Forge нажмите на Иконку истории в верхней части любой группы полей. Откроется модальное окно, показывающее полную историю ревизий:

  • Ревизия #42 — 2 минуты назад, автор: Элис Джонсон
  • Ревизия #41 — 3 часа назад, автор: Боб Смит
  • Ревизия #40 — вчера, автор: Элис Джонсон
  • Ревизия #39 — 2 дня назад, автор: Элис Джонсон

Каждая ревизия показывает автора, метку времени и (по желанию) краткое содержание изменений.

Сравнение ревизий

Нажмите на любые две ревизии, чтобы увидеть разницу:

  • Добавленные поля — выделены зеленым с названием и типом поля
  • Удаленные поля — выделены красным с указанием того, что это было
  • Измененные поля — выделены желтым с изменениями на уровне свойств (метка изменена с «X» на «Y», тип изменен с «text» на «textarea» и т.д.)
  • Измененные порядок полей — показаны со стрелками, указывающими изменения позиций
  • Изменения правил расположения — перечислены отдельно

Просмотр различий показывает точно, что изменилось между двумя ревизиями, чтобы вы могли понять влияние перед восстановлением.

Восстановление ревизии

Нажмите Восстановить до этой ревизии на любой исторической ревизии. Field Forge:

  1. Загружает JSON-данные ревизии
  2. Создает новую ревизию, отмечая текущее состояние (так что восстановление само по себе обратимо)
  3. Перезаписывает группу полей исторической версией
  4. Обновляет визуальный редактор, чтобы показать восстановленное состояние

Восстановление происходит мгновенно и обратимо. Если вы восстановили не ту ревизию, просто восстановите снова до самой последней.


Автоматическая очистка

Таблица ревизий со временем растет, поэтому Field Forge автоматически очищает старые ревизии:

  • Максимум 50 ревизий на группу полей (настраиваемо)
  • Старейшие ревизии удаляются первыми при достижении лимита
  • Недавние ревизии всегда сохраняются — последние 10 никогда не удаляются автоматически
  • Очистка выполняется по расписанию через WP Cron, а не при каждом сохранении

Для команд, которые хотят более длинную историю, лимит настраивается через фильтр:

«php add_filter('fieldforge/revisions/max_per_group', function($max) { return 200; // Сохранить 200 ревизий на группу }); «


Сжатие ревизий

JSON группы полей может быть большим. Для сайтов с сотнями групп полей и множеством ревизий каждая таблица ревизий может быстро расти. Field Forge хранит ревизии с сжатием gzip — типичное соотношение сжатия составляет 5–10x — так что ревизия группы полей размером 50 КБ занимает 5–10 КБ в хранилище.


Сценарии, где версионирование спасает ситуацию

Несчастный случай на сайте клиента

Редактор или администратор случайно удаляет критически важное поле. Без версионирования данные потеряны, и шаблоны тем, которые ссылаются на это поле, ломаются молча. С версионированием Field Forge восстановите предыдущую ревизию за 10 секунд.

Плохое развертывание

Вы редактировали группу полей на тестовом сервере и развернули на производственном, но изменение вызывает ошибку. Откатитесь к предыдущей ревизии, исследуйте ошибку, повторно разверните с исправлением.

A/B тестирование дизайнов группы полей

Экспериментируете с различными структурами группы полей? Сохраняйте как ревизии, сравнивайте, выбирайте победителя. Каждая итерация сохраняется.

Конфликты при совместной работе

Два члена команды редактируют одну и ту же группу полей в разных средах. Оба сохранения создают ревизии. Сравните две версии, чтобы увидеть конфликт, объедините вручную, сохраните как новую ревизию.

Аудиторский след

Для сред с высокой степенью соблюдения норм (здравоохранение, финансы, юриспруденция) наличие полного аудиторского следа изменений группы полей часто является регуляторным требованием. Таблица ревизий Field Forge предоставляет это автоматически.


Совмещение с синхронизацией локального JSON

Версионирование схемы и Синхронизация локального JSON работают вместе:

  • Локальный JSON предоставляет вам группы полей на основе файлов, которые перемещаются с git
  • Версионирование схемы предоставляет вам историю на уровне базы данных с откатом в один клик

История git охватывает вопрос «что мы развернули». Версионирование схемы охватывает вопрос «что произошло с тех пор, как мы развернули». Вместе они охватывают оба мира.


Не доступно в других плагинах

На 2026 год ни один другой плагин для пользовательских полей WordPress не имеет встроенной истории ревизий с откатом для групп полей:

  • ACF — нет истории ревизий
  • SCF — нет (то же самое, что и ACF, это форк)
  • Meta Box — нет
  • CMB2 — нет (код-ориентированный, полагается на git)
  • Carbon Fields — нет (код-ориентированный, полагается на git)
  • Pods — нет
  • Toolset — нет

Field Forge — единственный вариант с встроенным версионированием схемы.


Готовы к контролю версий группы полей?

Получите Field Forge — от $35/год →

Версионирование схемы включено в каждый платный план.

ИИ-ассистент Forge Онлайн

Привет! Я ИИ-ассистент Field Forge. Спрашивайте меня о чём угодно по плагину — настройка, возможности, устранение неполадок или разработка.

Только что
На базе Forge AI · Просмотр документации