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

Полное руководство по миграции ACF / SCF в Field Forge

Часть 1: Перед началом

Почему мигрировать?

Перед тем как инвестировать время в миграцию, убедитесь, что изменение того стоит. Причины для миграции с ACF или SCF в Field Forge:

  • Производительность — пользовательское хранилище таблиц Field Forge в 3–10 раз быстрее на сайтах с 1,000+ постами или сложными повторителями
  • Генерация схемы с помощью ИИ — уникально для Field Forge, экономит 80% времени на настройку групп полей
  • Инструменты для безголового WordPress — автоматическая генерация TypeScript и GraphQL
  • Цена — Field Forge Personal $35/год против ACF Pro $49/год; Agency $169 против ACF Agency $249
  • Неопределенность форка ACF/SCF — избегите драмы WP Engine / WordPress.org с плагином, который не участвует
  • Версионирование схемы — никогда не теряйте изменения группы полей; откат в один клик
  • Современная архитектура — Field Forge был создан для WordPress в 2026 году, а не в 2016

Если ни одно из этих условий не относится к вашей ситуации, оставайтесь на ACF или SCF. Миграция имеет свою цену (время, тестирование, риск), и вы должны мигрировать только в том случае, если преимущества перевешивают эти затраты.

Проверка совместимости

Перед миграцией убедитесь, что ваш код, специфичный для ACF, не столкнется с крайними случаями в совместимом слое Field Forge.

Что работает из коробки:

  • get_field(), the_field(), get_fields(), get_field_object(), get_field_objects()
  • update_field(), delete_field()
  • have_rows(), the_row(), get_row(), get_row_index(), get_row_layout()
  • get_sub_field(), the_sub_field(), update_sub_field()
  • acf_register_block_type() (PHP блоки Gutenberg)
  • get_field('name', 'options') и get_field('name', 'option') (страницы опций)
  • get_field('name', 'user_123') (пользовательские поля)
  • format_value параметр во всех функциях
  • Все 32 типа полей (текст, изображение, повторитель, гибкое содержимое, связь и т.д.)

Что требует корректировки:

  • Специфические хуки ACF такие как acf/load_field, acf/save_post, acf/format_value/type=text — у них есть эквиваленты в Field Forge (fieldforge/load_field и т.д.), которые ваш код должен будет обновить. Совместимый слой Field Forge не перенаправляет хуки ACF в свою собственную систему хуков.
  • Расширения пользовательских типов полей, зарегистрированные через систему хуков ACF — их нужно будет повторно зарегистрировать с использованием API регистрации типов полей Field Forge
  • Внутренние PHP классы ACF, доступ к которым осуществляется напрямую (например, ACFAdminAdminFields) — их нет в Field Forge
  • Внутренний JavaScript API ACF (acf.addAction() и т.д.) — у Field Forge есть свой собственный JS API

Для 95% сайтов ничего из вышеперечисленного не имеет значения. Темы обычно используют только функции шаблона, а не внутренние API.

Как проверить свой код:

Запустите grep по файлам вашей темы и пользовательских плагинов:

«`bash

Найдите все вызовы функций шаблона ACF (должно работать)

grep -r «get_field|have_rows|the_sub_field|acf_register_block_type» wp-content/themes/your-theme/

Найдите специфические хуки ACF (нужна корректировка)

grep -r «add_action.‘acf/|add_filter.‘acf/» wp-content/themes/your-theme/

Найдите использование внутренних классов ACF (нужен переписывание)

grep -r «\\ACF\\|use ACF» wp-content/themes/your-theme/ «`

Если первый grep возвращает результаты, а последние два пусты, вы в порядке — прямая миграция работает. Если второй или третий возвращают результаты, планируйте дополнительные обновления кода после миграции.


Часть 2: Резервное копирование (критически важно)

Полное резервное копирование базы данных

Всегда делайте резервную копию перед миграцией. Это не подлежит обсуждению.

С помощью инструмента вашего хостинга: Большинство управляемых хостингов WordPress (Kinsta, WP Engine, SiteGround, Cloudways и т.д.) имеют резервное копирование базы данных в один клик. Используйте его.

С помощью WP-CLI: «bash wp db export backup-before-fieldforge-$(date +%Y%m%d).sql «

Это создаст SQL дамп вашей всей базы данных. Храните его в безопасном месте (скачайте на локальный компьютер, загрузите в S3 и т.д.). Если миграция пойдет не так, вы сможете восстановить данные из этого дампа.

С помощью плагина: UpdraftPlus, BackupBuddy, BackWPup или аналогичные. Выполните полное резервное копирование — базы данных И Файлов — перед продолжением.

Резервное копирование файлов

Также сделайте резервную копию всей директории wp-content/. Если вы используете функцию Local JSON от ACF, JSON файлы находятся в wp-content/themes/your-theme/acf-json/.

Стадия (рекомендуется)

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

Если у вас нет стадии, выполните миграцию в часы низкой нагрузки.


Часть 3: Установите Field Forge

Скачайте плагин

Перейдите на цены Field Forge и купите лицензию. Вы получите ссылку для скачивания ZIP файла плагина Field Forge.

Или установите бесплатную версию с WordPress.org:

  1. Админка WordPress → Плагины → Добавить новый
  2. Поиск «Field Forge»
  3. Установите и активируйте

Примечание: бесплатная версия охватывает основные функции миграции. Платные планы открывают генерацию ИИ, TypeScript, GraphQL и некоторые расширенные типы полей.

Загрузите и активируйте

  1. Админка WordPress → Плагины → Добавить новый → Загрузить плагин
  2. Выберите ZIP файл Field Forge
  3. Установить сейчас → Активировать плагин

Field Forge теперь появляется в меню админки WordPress. ACF (или SCF) все еще активен — вы деактивируете его позже.

Активируйте вашу лицензию

Если вы приобрели платный план, активируйте лицензию:

  1. Field Forge → Настройки → Лицензия
  2. Вставьте ваш лицензионный ключ
  3. Нажмите Активировать лицензию

Вы получите подтверждение, что лицензия действительна.

Подтвердите, что Field Forge и ACF не конфликтуют

Совместимый слой ACF Field Forge умный в работе рядом с ACF. Когда оба плагина активны:

  • ACF продолжает обслуживать все вызовы функций шаблона (get_field() и т.д.)
  • Field Forge не переопределяет функции ACF (поскольку ACF все еще является авторитетным источником)
  • Field Forge регистрирует свои собственные экраны администрирования рядом с экранами ACF
  • Вы можете настраивать группы полей Field Forge, не затрагивая ACF

Это означает, что во время миграции нет конфликта. Вы можете работать в экранах администрирования обоих плагинов одновременно.


Часть 4: Запустите импорт

Откройте инструмент импорта

  1. Админка WordPress → Field Forge → Инструменты → Импорт
  2. Вы увидите список обнаруженных плагинов пользовательских полей (ACF, SCF, Meta Box, CMB2, Carbon Fields)
  3. Нажмите Импорт из Advanced Custom Fields (или Secure Custom Fields)

Настройте параметры импорта

Экран конфигурации импорта предлагает несколько опций:

  • Импорт групп полей — импортирует определения групп полей из ACF в Field Forge (обязательно)
  • Импорт значений полей — мигрирует все существующие значения полей из wp_postmeta в пользовательскую таблицу Field Forge (рекомендуется)
  • Импорт значений страниц опций — мигрирует данные страниц опций (если вы используете страницы опций ACF)
  • Размер партии — посты на запрос (по умолчанию 50, меньше для медленных хостов, больше для быстрых хостов)
  • Пропустить пустые значения полей — не мигрировать поля с пустыми значениями (экономит время и место)
  • Сухой запуск — симулировать миграцию без внесения изменений (хорошо для предварительного просмотра)

Начните с параметров по умолчанию. Если миграция вызывает ошибки, скорректируйте параметры и повторите.

Запустите импорт

Нажмите Начать импорт. Появится индикатор прогресса, показывающий:

  • Текущая фаза (группы полей → значения полей → страницы опций → проверка)
  • Обработанные посты / всего постов
  • Прошедшее время / оценочное оставшееся время
  • Ошибки (если есть)

Импорт выполняется партиями по 50 постов на AJAX запрос. Пакетирование предотвращает тайм-ауты PHP на больших сайтах и обеспечивает видимый прогресс.

Ожидаемое время

  • <100 постов: 1–2 минуты
  • 100–1,000 постов: 3–10 минут
  • 1,000–10,000 постов: 15–45 минут
  • 10,000+ постов: 45 минут до 2 часов

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


Часть 5: Проверьте миграцию

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

После завершения импорта Field Forge выполняет автоматические проверки:

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

Вы увидите зеленую галочку рядом с каждым шагом проверки или желтое/красное предупреждение, если что-то требует внимания.

Ручная проверка

Не полагайтесь только на автоматические проверки. Проверьте важные страницы:

1. Проверьте типичный пост с пользовательскими полями

Перейдите в админку WordPress → Посты → выберите пост, который использует пользовательские поля → прокрутите до метабокса Field Forge → проверьте, что значения полей совпадают с тем, что в метабоксе ACF выше.

2. Проверьте страницу с гибким содержимым

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

3. Проверьте страницу с повторителями

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

4. Проверьте страницы опций

Перейдите на любую страницу опций (Настройки сайта, Настройки заголовка и т.д.) — значения должны отображаться как в представлении страницы опций ACF, так и в версии Field Forge.

5. Проверьте фронтенд

Загрузите главную страницу и несколько ключевых страниц в браузере. ACF все еще активен на этом этапе, поэтому рендеринг фронтенда все еще происходит из ACF. Подтвердите, что ничего не сломалось во время процесса миграции.

Если проверка не удалась

Если какая-либо проверка не удалась:

  1. Не паникуйте. ACF все еще активен; ваш сайт по-прежнему обслуживает контент нормально.
  2. Проверьте журнал ошибок. Field Forge записывает подробные ошибки в журнал ошибок WordPress или в админке Field Forge в Инструменты → Журналы.
  3. Повторите импорт. Иногда временные ошибки (тайм-ауты, временные проблемы с базой данных) решаются при повторной попытке.
  4. Проверьте конкретные типы полей, которые не удались. Журнал Field Forge указывает, какие типы полей имели проблемы.
  5. Свяжитесь с поддержкой[email protected] с подробностями о сбое.

Часть 6: Деактивируйте ACF (критический шаг)

Это момент истины. Деактивация ACF активирует совместимый слой Field Forge — все вызовы get_field() из вашей темы теперь будут разрешаться в хранилище Field Forge вместо ACF.

Перед деактивацией

  • Убедитесь, что все мигрировано (Часть 5)
  • Подтвердите, что фронтенд выглядит правильно с активным ACF
  • Подготовьте резервную копию (Часть 2)
  • Выберите момент с низким трафиком, если это производственный сайт

Деактивируйте ACF

Админка WordPress → Плагины → Установленные плагины → Advanced Custom Fields → Деактивировать

Не нажимайте «Удалить» пока — мы хотим, чтобы ACF оставался доступным в качестве резервного варианта, если что-то пойдет не так.

Что происходит сразу

В момент деактивации ACF:

  • Шаблонные функции ACF (get_field и т.д.) перестают регистрироваться ACF
  • Совместимый слой Field Forge это обнаруживает и регистрирует свои собственные реализации
  • Вызовы шаблона теперь разрешаются в хранилище Field Forge
  • Экраны администрирования Field Forge берут на себя навигацию «Пользовательские поля»

Проверьте фронтенд

Немедленно перезагрузите фронтенд:

  1. Главная страница — выглядит ли она правильно?
  2. Страница с гибким содержимым — отображаются ли все секции?
  3. Страница с повторителем — отображаются ли все строки?
  4. Страницы опций — появляются ли глобальные настройки (название сайта, социальные URL и т.д.)?
  5. PHP блок Gutenberg (если вы используете acf_register_block_type()) — рендерится ли он?

Если все выглядит правильно, миграция успешна. Празднуйте.

Если что-то сломано, перейдите к Части 8 (Устранение неполадок) ниже.


Часть 7: Очистка и оптимизация

Удалите ACF (через 1 неделю)

Подождите 1 неделю с активным Field Forge перед полным удалением ACF. Это даст вам время, чтобы обнаружить любые крайние случаи, которые не были пойманы в немедленной проверке. Если возникнут проблемы, повторно активируйте ACF в качестве резервного варианта, пока вы отлаживаете.

После 1 недели стабильной работы:

  1. Админка WordPress → Плагины → Установленные плагины
  2. Advanced Custom Fields → Удалить
  3. Подтвердите удаление
  4. ACF исчезнет с вашего сайта

Необязательно: очистите wp_postmeta

После миграции данные ACF все еще находятся в wp_postmeta (миграция Field Forge не разрушительна — она копирует данные, не удаляя из источника). Эти дополнительные данные занимают место, но не причиняют вреда.

Если вы хотите очистить:

«sql DELETE FROM wp_postmeta WHERE meta_key LIKE '_%' AND meta_key IN ( SELECT DISTINCT meta_key FROM wp_postmeta WHERE meta_key LIKE '_%' ); «

ПРЕДУПРЕЖДЕНИЕ: Этот SQL является приблизительным и опасным. Запускайте его только если вы уверены в своих навыках работы с базами данных И имеете недавнюю резервную копию. Поддержка Field Forge может помочь с более безопасным запросом очистки, адаптированным к вашим конкретным группам полей.

Большинство сайтов не беспокоятся об этой очистке — дополнительное хранилище незначительно.

Оптимизируйте настройки Field Forge

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

  1. Включите синхронизацию Local JSON — сохраняйте группы полей в виде JSON файлов в вашей теме для версионности git (Field Forge → Настройки → Local JSON)
  2. Включите объектный кэш — если у вас есть Redis или Memcached, Field Forge автоматически использует их
  3. Запустите пакетную загрузку на страницах архивов через пользовательские теги шаблона для еще более быстрой производительности
  4. Попробуйте генерацию схемы с помощью ИИ — в следующей группе полей, которую вы создадите, попробуйте генератор ИИ вместо ручной сборки
  5. Сгенерируйте типы TypeScript — если у вас есть безголовый фронтенд, скачайте файлы .d.ts из админки Field Forge

Часть 8: Устранение неполадок

«Отсутствуют значения полей» после деактивации ACF

Симптом: Пост, который имел пользовательские значения полей в ACF, кажется пустым в Field Forge после деактивации ACF.

Причина: Значение поля не мигрировало во время импорта. Это может произойти, если:

  • Поле было добавлено в ACF после последнего сохранения поста
  • Поле имеет необычный формат хранения (очень редко)
  • Импорт был прерван до обработки этого конкретного поста

Исправление:

  1. Повторно активируйте ACF (данные в безопасности)
  2. Перейдите в Field Forge → Инструменты → Импорт
  3. Повторите импорт с опцией «Возобновить» или «Полный повтор»
  4. Импортер повторно проверит все посты и подберет любые пропущенные значения
  5. Снова деактивируйте ACF и повторно проверьте

«Сломанный шаблон» после деактивации ACF

Симптом: Шаблон, который раньше рендерился правильно, теперь вызывает ошибку PHP или показывает неожиданный контент.

Причина: Шаблон использует специфическую для ACF функцию или хук, который не охватывается совместимым слоем Field Forge.

Исправление:

  1. Повторно активируйте ACF
  2. Проверьте журналы ошибок PHP для конкретной функции / хука, который не сработал
  3. Определите, какой специфический API ACF использует шаблон
  4. Обновите шаблон, чтобы использовать эквивалент Field Forge
  5. Снова деактивируйте ACF

Наиболее распространенные виновники:

  • acf_add_local_field_group() — используйте fieldforge_register_field_group() вместо этого
  • acf_form() — используйте Form Forge или другой конструктор форм
  • Пользовательские типы полей, зарегистрированные через хук acf/include_field_types — повторно зарегистрируйте через фильтр fieldforge/field_types/register

«Медленная производительность после миграции»

Симптом: Страницы загружаются медленнее после перехода на Field Forge.

Причина: Редко, но возможно. Пользовательское хранилище таблиц Field Forge должно быть быстрее, а не медленнее. Если вы видите более медленную производительность:

  • Объектный кэш неправильно настроен — Field Forge возвращается к запросам базы данных
  • Включен WP_DEBUG в WordPress с большим файлом журнала
  • Другой плагин вызывает замедление (совпадение по времени)

Исправление:

  1. Проверьте, что ваш плагин объектного кэша активен и работает
  2. Отключите WP_DEBUG и WP_DEBUG_LOG в производственной среде
  3. Запустите Field Forge → Инструменты → Тест производительности, чтобы оценить конкретные страницы
  4. Свяжитесь с поддержкой с деталями времени

«Миграция, похоже, пропустила страницы опций»

Симптом: Значения страниц опций кажутся пустыми или по умолчанию после миграции.

Причина: ACF хранит значения страниц опций с другим префиксом ключа, чем значения полей постов. Импортер должен обрабатывать оба случая.

Исправление:

  1. Перейдите в Field Forge → Инструменты → Импорт
  2. Нажмите Повторный импорт страниц опций
  3. Это повторно запускает только миграцию страниц опций

«Строки повторителей в неправильном порядке»

Симптом: Повторяющиеся поля мигрировали, но строки отображаются в другом порядке, чем были в ACF.

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

Исправление: Свяжитесь с поддержкой с конкретным именем группы полей. Это обычно одноразовое исправление с помощью SQL обновления.


Часть 9: Откат (если вам это нужно)

Быстрый откат

Если миграция пошла не так, и вам нужно вернуться к ACF:

  1. Повторно активируйте ACF (Плагины → Установленные плагины → ACF → Активировать)
  2. Деактивируйте Field Forge (Плагины → Установленные плагины → Field Forge → Деактивировать)
  3. Шаблонные функции ACF повторно регистрируются
  4. Ваш сайт возвращается к обслуживанию данных из wp_postmeta (хранилище ACF)
  5. Все работает так, как было до попытки миграции

Миграция Field Forge не разрушительна — данные ACF все еще на месте. Откат всегда возможен, пока вы не удалили ACF.

Полный откат к состоянию до миграции

Если вы хотите полностью отменить миграцию и удалить Field Forge:

  1. Повторно активируйте ACF
  2. Деактивируйте Field Forge
  3. Field Forge → Настройки → Удалить все данные (удаляет пользовательскую таблицу Field Forge, ревизии, JSON файлы)
  4. Деактивируйте и удалите Field Forge
  5. Ваш сайт возвращается точно в то состояние, в котором он был до миграции

Часто задаваемые вопросы

Сколько времени занимает типичная миграция ACF? 30–90 минут для большинства сайтов. Более крупные сайты (10,000+ постов) могут занять 2+ часа.

Упадут ли мои рейтинги во время миграции? Нет. Миграция не изменяет URL, контент или метаданные, которые видит Google. Field Forge мигрирует только слой хранения.

Могу ли я запускать ACF и Field Forge бесконечно? Технически да во время миграции, но не как долгосрочную производственную настройку. Запуск обоих означает дублирование интерфейсов администрирования и путаницу в конфигурации.

Что насчет функций ACF Pro, таких как Повторитель и Гибкое Содержимое? Платные планы Field Forge включают все функции ACF Pro. Повторитель, Гибкое Содержимое, Группа, Клонирование, Страницы Опций, Галерея, PHP Блоки — все работает после миграции.

Нужно ли переписывать код моей темы? Нет. Совместимый слой ACF Field Forge означает, что существующий код продолжает работать.

Что если у меня есть пользовательские типы полей ACF от сторонних плагинов? Пользовательские типы полей, зарегистрированные через систему хуков ACF, нужно будет повторно зарегистрировать для Field Forge. Свяжитесь с поддержкой для помощи с конкретными случаями.

Могу ли я позже мигрировать обратно с Field Forge в ACF? Да. Экспорт данных Field Forge позволяет вам экспортировать группы полей в формате, совместимом с ACF. Импортируйте в ACF, деактивируйте Field Forge. Ваш сайт продолжит работать.

Миграция бесплатна? Бесплатная версия Field Forge на WordPress.org включает инструменты миграции. Вам нужна только платная лицензия для функций ИИ, генерации TypeScript/GraphQL и некоторых расширенных типов полей.

Работает ли миграция и для SCF? Да. SCF является форком ACF с тем же форматом данных. Импортер ACF обрабатывает оба.


Готовы к миграции?

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

14-дневный возврат. Бесплатная версия включает инструменты миграции. Приоритетная поддержка во время миграции.

Вопросы перед началом? Свяжитесь с нашей командой поддержки миграции →

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

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

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