Cette recette fournit un processus de migration détaillé et prudent avec des listes de contrôle et des étapes de vérification. Suivez-le dans l’ordre pour garantir une transition en douceur.
Liste de contrôle avant migration
Avant de commencer, complétez chaque élément de cette liste :
| Étape | Action | Fait ? |
|---|---|---|
| 1 | Créez une sauvegarde complète du site (fichiers + base de données) | |
| 2 | Configurez un site de staging/test et effectuez la migration d’abord là-bas | |
| 3 | Documentez vos groupes de champs ACF actuels (capture d’écran ou exportation) | |
| 4 | Notez tous les groupes de champs enregistrés en PHP dans le functions.php de votre thème | |
| 5 | Vérifiez les plugins qui dépendent d’ACF (certains plugins intègrent leurs propres champs ACF) | |
| 6 | Installez Field Forge sur votre site de test (ne désactivez pas encore ACF) | |
| 7 | Si vous migrez des valeurs de champ, activez une licence Field Forge PRO | |
| 8 | Vérifiez que votre limite de mémoire PHP est d’au moins 256M et que max_execution_time est d’au moins 300 |
Étape 1 : Détecter les données ACF
- Allez dans Field Forge > Migration
- Cliquez sur Détecter les données ACF
- Examinez les résultats du scan :
– Nombre de publications avec des données ACF
– Total des valeurs de champ à migrer
- Prenez une capture d’écran ou notez ces chiffres — vous les utiliserez pour vérifier la complétude de la migration plus tard
Étape 2 : Importer les groupes de champs
- Cliquez sur Importer les groupes de champs
- Attendez que l’importation soit terminée
- Vérifiez les résultats :
– Ouvrez 2-3 groupes de champs et vérifiez que tous les champs, paramètres et règles de localisation correspondent à votre configuration ACF
– Faites particulièrement attention aux champs complexes : Les répéteurs, le contenu flexible et les groupes doivent avoir tous leurs sous-champs intacts
- Si quelque chose semble incorrect, vous pouvez supprimer les groupes importés et relancer l’importation — il lit les données d’ACF, qui restent inchangées
Étape 3 : Migrer les valeurs de champ (PRO)
- De retour sur Field Forge > Migration, cliquez sur Importer les groupes de champs avec valeurs
- Une barre de progression apparaît montrant le traitement par lots
- Pour les grands sites, la migration s’exécute en arrière-plan — vous pouvez fermer en toute sécurité l’onglet du navigateur
- Attendez l’avis de complétion (vérifiez si vous avez fermé l’onglet)
- Notez le nombre final : nombre de publications traitées et valeurs migrées
Étape 4 : Vérification post-migration
Effectuez ces vérifications avant de désactiver ACF :
| Vérification | Comment vérifier | Résultat attendu |
|---|---|---|
| Les groupes de champs existent | Field Forge > Groupes de champs | Même nombre de groupes que dans ACF |
| Les champs apparaissent sur les publications | Modifiez une publication qui avait des données ACF | Métabox avec champs apparaît sous l’éditeur |
| Les données sont peuplées | Vérifiez les champs sur plusieurs publications | Les valeurs correspondent à ce qui a été saisi dans ACF |
| Les données du répéteur sont intactes | Ouvrez une publication avec un répéteur | Toutes les lignes présentes avec les bonnes données |
| Le contenu flexible est intact | Ouvrez une publication avec du contenu flexible | Toutes les mises en page présentes dans le bon ordre |
| Données de la page d’options | Visitez la page d’options | Toutes les valeurs globales présentes |
| Affichage frontend | Affichez le site dans un navigateur | Les pages semblent identiques à avant la migration |
get_field() fonctionne | Testez les pages qui utilisent des données de champ | Pas d’erreurs, valeurs correctes affichées |
have_rows() fonctionne | Testez les pages avec des répéteurs | Les boucles fonctionnent correctement |
Étape 5 : Désactiver ACF
- Une fois toutes les vérifications réussies, allez dans Plugins
- Désactivez Advanced Custom Fields PRO
- Actualisez le frontend et vérifiez plusieurs pages — tout devrait continuer à fonctionner car Field Forge fournit toutes les mêmes fonctions
- Vérifiez la zone d’administration — tous les groupes de champs devraient rester visibles et fonctionnels
Étape 6 : Vérifiez que tout fonctionne sans ACF
- Testez chaque modèle de page qui utilise des champs personnalisés
- Testez chaque formulaire, répéteur et section de contenu flexible
- Vérifiez les pages d’options et les paramètres globaux du site
- Testez sur plusieurs appareils (bureau, tablette, mobile)
- Demandez à un autre membre de l’équipe de vérifier des pages clés
Problèmes courants et solutions
| Problème | Cause | Solution |
|---|---|---|
| Erreur fatale après désactivation d’ACF | Un plugin dépend directement d’ACF (pas via get_field()) | Réactivez ACF, identifiez le plugin dépendant et contactez son auteur pour la compatibilité avec Field Forge |
| Certains champs apparaissent vides | Les valeurs de champ n’ont pas été migrées (version gratuite) | Mettez à niveau vers PRO et exécutez la migration des valeurs |
| Lignes de répéteur dans le mauvais ordre | Cas rare avec des données profondément imbriquées | Relancez la migration ; si cela persiste, contactez le support |
| Les lignes de répéteur imbriquées à l’intérieur du contenu flexible se dupliquent après un glisser-déposer et un enregistrement | Les anciennes versions réindexaient la ligne de contenu flexible parent lors du tri du répéteur imbriqué, puis lisaient les enregistrements imbriqués à partir du mauvais enregistrement parent | Mettez à jour Field Forge, actualisez l’éditeur, réorganisez les lignes imbriquées une fois et enregistrez. Les versions actuelles réindexent uniquement le répéteur actif et lisent les enregistrements imbriqués par leur ID parent direct. |
| Les valeurs de groupe / répéteur / contenu flexible imbriquées sont manquantes | Les anciennes bases de données ACF peuvent contenir des publications de groupe de champs en double avec la même clé/titre ; un doublon vide peut cacher le groupe peuplé lors de l’importation | Mettez à jour Field Forge et relancez la migration. Les versions actuelles dédupliquent les groupes ACF par clé/titre et conservent la version avec le plus de champs enfants directs avant d’importer les valeurs. |
| La logique conditionnelle ne cache pas les champs | Règles de niveau supérieur : confirmez que “Logique conditionnelle” est activée dans les paramètres du champ, que le champ déclencheur de la règle a une valeur et que la paire opérateur/valeur correspond à vos données. Les règles imbriquées (à l’intérieur des mises en page Répéteur / Groupe / Flex) sont stockées mais pas encore évaluées. | Rouvrez l’éditeur de groupe de champs, développez le champ affecté et vérifiez que la règle lit le bon nom de champ. Pour les cas imbriqués, déplacez la règle vers un champ de niveau supérieur qui contrôle la visibilité du composé parent. |
| Page d’options manquante | Les pages d’options nécessitent PRO | Activez la licence PRO, puis relancez la migration |
| Mise en page frontend cassée | Le thème dépend des hooks spécifiques à ACF | Vérifiez si le thème utilise des hooks acf/ et passez aux équivalents fieldforge/ |
| Fichiers d’exportation JSON faisant référence aux clés ACF | Anciens fichiers JSON locaux d’ACF | Supprimez les anciens fichiers acf-json/ dans votre thème et réenregistrez les groupes de champs afin que Field Forge régénère des fichiers frais dans fieldforge-json/ (le dossier de synchronisation par défaut) |