Если ваш сайт в настоящее время использует ACF Pro (Advanced Custom Fields), Field Forge может импортировать все ваши группы полей, настройки, условную логику и данные полей. Миграция разработана так, чтобы быть бесшовной — ваша тема продолжает работать без каких-либо изменений в коде, потому что Field Forge предоставляет те же функции шаблона, что и ACF (get_field(), the_field(), have_rows() и все остальные).
Этот раздел предоставляет подробный, пошаговый процесс миграции с проверкой на каждом этапе и полным планом отката. Миграция определений полей между плагинами — это значительное изменение, и стоит быть тщательным.
Прежде чем что-либо трогать: Контрольный список перед миграцией
Завершите каждый пункт этого контрольного списка перед началом миграции:
| Шаг | Действие | Как проверить |
|---|---|---|
| 1 | Создайте полную резервную копию сайта — базы данных и файлов | Загрузите резервную копию с помощью панели управления хостингом, UpdraftPlus или аналогичного плагина резервного копирования. Убедитесь, что вы можете получить доступ к файлу резервной копии. |
| 2 | Запишите текущую версию ACF Pro | Перейдите в Плагины > Установленные плагины, найдите ACF Pro, запишите номер версии |
| 3 | Подсчитайте ваши группы полей ACF | Перейдите в ACF > Группы полей, запишите общее количество |
| 4 | Определите ваши самые критические группы полей | Выберите 3-5 групп полей, которые управляют наиболее видимыми частями вашего сайта (героические секции, страницы продуктов, ключевые целевые страницы) |
| 5 | Проверьте эти критические страницы | Посетите 3-5 ключевых страниц на фронтенде и сделайте скриншоты или заметки о том, как они выглядят сейчас — это ваша ссылка «до» |
| 6 | Сохраните ACF Pro активным | НЕ деактивируйте ACF пока — Field Forge читает из него во время миграции |
| 7 | Активируйте вашу лицензию Field Forge PRO | Перейдите в Field Forge > Лицензия и активируйте — вам нужен PRO для миграции значений полей (не только определений групп полей) |
| 8 | Проверьте ресурсы вашего хостинга | Большим сайтам требуется достаточная память PHP (256MB+) и время выполнения (300 секунд+). Спросите у вашего хостинг-провайдера, если вы не уверены. |
| 9 | Выберите время с низким трафиком | Запустите миграцию, когда на вашем сайте минимальное количество посетителей, на случай, если что-то временно нарушит работу фронтенда |
| 10 | Сообщите вашей команде контента | Скажите редакторам избегать редактирования постов в течение окна миграции |
Шаг 1: Обнаружение данных ACF
- Перейдите в Field Forge > Миграция в админке WordPress
- Нажмите Обнаружить данные ACF
- Field Forge сканирует ваш сайт и сообщает, что он находит:
— Количество постов/страниц с данными полей ACF
— Общее количество значений полей, хранящихся в базе данных
— Список используемых функций ACF (Повторители, Гибкий контент, Страницы опций и т.д.)
- Внимательно проверьте сводку. Количество групп полей должно совпадать с тем, что вы подсчитали в контрольном списке перед миграцией. Если числа сильно различаются, проведите расследование перед продолжением.
- Обратите внимание, упоминает ли сводка типы полей только для PRO (Повторители, Гибкий контент, Группы, Клонирование). Если да, подтвердите, что ваша лицензия Field Forge PRO активна.
[Скриншот: экран миграции, показывающий результаты обнаружения — «Найдено 12 групп полей, 847 постов с данными полей, 4,231 общее количество значений полей»]
Шаг 2: Импорт групп полей (только структура)
Этот шаг импортирует определения групп полей — сами поля, их типы, настройки, правила расположения и макет. Он не затрагивает фактические данные контента.
- Нажмите Импортировать группы полей
- Field Forge конвертирует каждую группу полей ACF в формат Field Forge
- Индикатор прогресса показывает, как обрабатывается каждая группа
- Все сохраняется:
— Правила расположения (какие посты/страницы показывают каждую группу полей)
— Порядок полей и настройки ширины обертки
— Правила условной логики
— Поля макета вкладок, аккордеонов и сообщений
— Подполя внутри Групп, Повторителей и макетов Гибкого контента, включая глубоко вложенные структуры
— Группы полей только для ACF Local JSON из acf-json/group_*.json, даже если соответствующие посты базы данных групп полей ACF отсутствуют
- Появляется сообщение об успешном завершении с указанием, сколько групп было импортировано
- Проверка: Перейдите в Field Forge > Группы полей и подсчитайте импортированные группы. Число должно совпадать с количеством ACF.
- Проверка: Откройте 2-3 импортированные группы полей и проверьте, что поля, их типы и настройки выглядят правильно
- Проверка: Откройте пост в редакторе, который должен показывать одну из этих групп полей. Теперь вы должны увидеть группу полей дважды — один раз от ACF и один раз от Field Forge. Это ожидаемо на этом этапе.
Шаг 3: Импорт значений полей (данные — требуется PRO)
Этот шаг мигрирует фактический контент — все, что ваши редакторы ввели в поля ACF на постах и страницах. Это самый критический шаг.
- Нажмите Импортировать группы полей с значениями
- Появляется индикатор прогресса, показывающий статус миграции
- Field Forge обрабатывает посты партиями по 50 для надежности
- Для небольших сайтов (менее 500 постов) это завершается за минуту
- Для больших сайтов (тысячи постов) миграция проходит в фоновом режиме — вы можете закрыть вкладку браузера, и она продолжит обработку. Уведомление появится в админке, когда она завершится.
- Подождите уведомления о завершении перед продолжением
- Проверка: Откройте 5-10 постов разных типов и проверьте, что:
— Текстовые поля содержат правильный текст
— Поля изображений показывают правильные изображения
— Поля выбора/флажка/радио имеют правильные выборы
— Строки повторителей целы со всеми их данными подполя
— Поля групп сохраняют свои дочерние значения
— Макеты гибкого контента находятся в правильном порядке с правильными данными
— Если макет гибкого контента содержит вложенный повторитель, перетащите одну вложенную строку, нажмите Обновить и подтвердите, что порядок строк сохраняется без дублирующихся строк
Шаг 4: Проверьте фронтенд
Здесь ваши скриншоты «до» из контрольного списка перед миграцией становятся необходимыми.
- Посетите 3-5 критических страниц, которые вы задокументировали перед миграцией
- Сравните их с вашими скриншотами/заметками — все должно выглядеть идентично
- Проверьте страницы, которые используют Повторители (страницы команды, разделы часто задаваемых вопросов, таблицы цен) — убедитесь, что все строки отображаются
- Проверьте страницы, которые используют Гибкий контент — убедитесь, что все секции отображаются в правильном порядке
- Проверьте заголовок и подвал сайта — если они используют данные страницы опций, убедитесь, что номер телефона, логотип, социальные ссылки и т.д. все еще отображаются
- Проверьте на мобильных устройствах — адаптивные макеты не должны быть затронуты
Шаг 5: Деактивируйте ACF Pro (когда будете готовы)
Переходите к этому шагу только после тщательной проверки. Не спешите.
- Перейдите в Плагины > Установленные плагины
- Найдите ACF Pro в списке
- Нажмите Деактивировать (не Удалить — деактивируйте только на данный момент)
- Сразу же снова посетите ваши 3-5 критических страниц фронтенда
- Все должно по-прежнему выглядеть идентично, потому что Field Forge предоставляет все те же функции шаблона
- Проверьте редактор WordPress — посты должны показывать метабоксы Field Forge (не ACF метабоксы)
- Если все работает, оставьте ACF Pro деактивированным как минимум на одну неделю, пока ваша команда использует сайт в обычном режиме
- После одной недели стабильной работы вы можете удалить ACF Pro, если хотите — но нет ничего плохого в том, чтобы оставить его деактивированным в качестве страховки
План отката
Если что-то пойдет не так на любом этапе:
| Проблема | Решение |
|---|---|
| Группы полей импортированы неправильно | Удалите группы полей Field Forge и повторите импорт |
| Значения полей отсутствуют или неверны | Повторите миграцию значений — она идемпотентна и удаляет дубликаты записей групп ACF перед импортом значений |
| Страницы фронтенда выглядят иначе после деактивации ACF | Немедленно повторно активируйте ACF Pro — сайт вернется в предыдущее состояние |
| Миграция не удалась или истекло время | Проверьте журналы ошибок сервера на наличие проблем с памятью или тайм-аутами. Увеличьте память PHP до 512MB и максимальное время выполнения до 600 секунд, затем повторите попытку. |
| Вы хотите отменить все | Восстановите полную резервную копию, которую вы создали в контрольном списке перед миграцией. Это вернет весь сайт в его точное состояние до миграции. |
Справочник по совместимости миграции
| Функция ACF | Поддерживается в миграции | Примечания |
|---|---|---|
| Все основные типы полей (текст, число, изображение и т.д.) | Да | |
| Выбор, флажок, радио, правда/ложь, группа кнопок | Да | |
| Выбор даты, выбор цвета | Да | |
| Вкладки, аккордеоны, сообщения | Да | |
| Повторители | Да | Требуется PRO |
| Группы | Да | Требуется PRO |
| Гибкий контент | Да | Требуется PRO |
| Поля клонирования | Да | Требуется PRO |
| Страницы опций и их данные | Да | Требуется PRO |
| Условная логика | Да (поля верхнего уровня) | Правила на полях верхнего уровня импортируются и оцениваются во время выполнения. Правила на полях, вложенных в Повторитель / Группу / Гибкий контент, импортируются, но еще не оцениваются — каждое вложенное поле все еще отображается. |
| Правила расположения | Да | |
| Значения полей (данные контента поста) | Да | Требуется PRO |
| Локальные JSON файлы | Да | Field Forge может импортировать определения групп полей только для ACF Local JSON из acf-json/group_*.json; собственная синхронизация Field Forge использует fieldforge-json/. |
| ACF Блоки (блоки Gutenberg) | Бета / ручная проверка | Простые определения блоков ACF могут быть сопоставлены с PHP Блоками Field Forge (PRO), но пользовательские обратные вызовы рендеринга, активы блоков и код регистрации, специфичный для темы, должны быть проверены вручную перед удалением ACF Pro. |
> Хорошо знать: Миграция не изменяет и не удаляет никаких данных ACF. Оба плагина могут сосуществовать, пока вы все проверяете. Ваши оригинальные данные ACF остаются в таблице wp_postmeta, даже после миграции. Удаляйте ACF Pro только после длительного тестирования, подтверждающего, что все работает.
> Важно: Если ваш сайт использует функции ACF в пользовательских плагинах (не только в теме), протестируйте эти плагины после миграции. Field Forge предоставляет все стандартные функции ACF, но очень необычные или не задокументированные внутренние функции ACF могут вести себя иначе. Тестируйте тщательно.
> Совет: Для крупных корпоративных сайтов с десятками тысяч постов рассмотрите возможность миграции в течение окна обслуживания и использования функции фоновой миграции. Сообщите об этом окне всей вашей команде контента, чтобы никто не редактировал посты во время миграции значений.