Field Forge vs CMB2 — Constructeur Visuel vs Code-First | Field Forge - Champs personnalisés, conçus pour la vitesse
Télécharger Se connecter
Comparaison

Field Forge vs CMB2 — Constructeur Visuel vs Code-First

Essayer Field Forge gratuitement Toutes les comparaisons
Fonctionnalité Field Forge from $35/yr Competitor
Enregistrement de champ
Constructeur visuel
Convial pour les non-développeurs
Génération de schéma AI
Stockage de table personnalisé
Performance sur les grands sites
Compatibilité ACF
Génération TypeScript
Génération GraphQL
Versionnage de schéma
Support commercial
Types de champ

Comparaison TL;DR

Field Forge CMB2
Prix $35/an (Personnel) à $169/an (Agence) Gratuit
Enregistrement de champ Constructeur visuel + API de code Code uniquement (fichiers PHP)
Constructeur visuel Oui (moderne) Non
Convivial pour les non-développeurs Oui Non (nécessite des compétences en PHP)
Génération de schéma AI Oui Non
Stockage de table personnalisé Oui Non (wp_postmeta)
Performance sur les grands sites 3–10x plus rapide Identique à ACF (wp_postmeta)
Compatibilité ACF Oui (couche de compatibilité) Non
Génération TypeScript Oui Non
Génération GraphQL Oui Non
Versionnage de schéma Oui Non (utilisez git pour les fichiers de code)
Support commercial Oui Non (communauté uniquement)
Types de champ 32 ~25

Où CMB2 est fort

Philosophie code-first

L’interface principale de CMB2 est le code PHP. Les champs sont définis via des fonctions de rappel enregistrées sur le hook cmb2_admin_init :

“`php add_action(‘cmb2_admin_init’, function() { $cmb = new_cmb2_box([ ‘id’ => ‘hero_section’, ‘title’ => ‘Section Héros’, ‘object_types’ => [‘page’], ]);

$cmb->add_field([ ‘name’ => ‘Titre Héros’, ‘id’ => ‘hero_title’, ‘type’ => ‘text’, ]);

$cmb->add_field([ ‘name’ => ‘Image Héros’, ‘id’ => ‘hero_image’, ‘type’ => ‘file’, ]); }); “`

Pour les développeurs qui versionnent tout et ne touchent jamais à l’admin WordPress pour la configuration, ce flux de travail est idéal. Les définitions de champ vivent dans les fichiers de thème/plugin, s’engagent dans git, se déploient via CI/CD, sans maux de tête de migration de base de données.

Gratuit et open source

CMB2 est sous licence GPL, gratuit pour toujours, et maintenu par une petite équipe de contributeurs. Pour les projets sensibles au coût, vous ne pouvez pas battre le gratuit.

Léger

La base de code de CMB2 est petite. Pas d’interface admin à rendre, pas de cadre d’options lourd. Impact minimal sur les temps de chargement des pages et la performance de l’admin.

Pas de dépendance à l’admin WordPress

Parce que les champs sont définis dans le code, un développeur peut mettre en place un système de champs personnalisés complet sans jamais ouvrir l’admin WordPress. Pour les flux de travail lourds en CLI ou la configuration programmatique de sites, c’est un avantage.


Où Field Forge gagne

Constructeur visuel pour les non-développeurs

La plus grande limitation de CMB2 est qu’il n’a aucun constructeur visuel. Chaque champ doit être défini dans le code PHP. Pour les équipes qui incluent :

  • Des éditeurs de contenu qui souhaitent ajouter des champs sans l’aide d’un développeur
  • Des designers qui ont besoin d’itérer rapidement sur les structures de groupes de champs
  • Des chefs de projet qui doivent configurer des types de contenu simples
  • Des clients d’agence qui souhaitent maintenir leur propre site sans embaucher un développeur à chaque fois

…CMB2 est un non-démarreur.

Field Forge offre les deux : un constructeur visuel moderne pour les non-développeurs et une API de code pour les développeurs qui préfèrent la configuration programmatique. Vous n’avez pas à choisir.

Génération de schéma AI

Field Forge est le seul plugin de champs personnalisés WordPress avec génération de groupes de champs basée sur l’IA. CMB2 n’a pas de fonctionnalités AI. Pour les équipes construisant régulièrement de nouveaux groupes de champs, la génération AI fait gagner un temps considérable.

Fonction de génération de schéma AI →

Stockage de table personnalisé

CMB2 utilise wp_postmeta pour le stockage des valeurs de champ, héritant du même problème de requête N+1 qui affecte ACF et Meta Box. Field Forge utilise une table indexée personnalisée qui fonctionne 3–10x plus vite sur les sites avec de nombreux articles ou des répétiteurs complexes.

Pour un développeur construisant un site qu’il s’attend à voir croître à plus de 10 000 articles, c’est une véritable préoccupation architecturale. L’approche wp_postmeta de CMB2 rencontrera des murs de performance qui nécessiteront des solutions de mise en cache. L’approche de table personnalisée de Field Forge évolue de manière linéaire.

Fonction de stockage de table personnalisé →

Couche de compatibilité ACF

CMB2 a sa propre API — get_post_meta($post_id, 'field_name', true) — qui est native à WordPress mais manque de la mise en forme plus riche et de la résolution de champs relationnels d’ACF. La migration d’ACF vers CMB2 nécessite de réécrire chaque référence de modèle.

Field Forge prend en charge à la fois l’API de style ACF (get_field(), have_rows(), etc.) via la couche de compatibilité et le get_post_meta() natif de WordPress. Le code écrit pour ACF ou SCF fonctionne sans changement.

TypeScript et GraphQL pour headless

CMB2 a un support minimal pour WordPress headless. Les valeurs de champ sont stockées dans wp_postmeta et exposées sur l’API REST de WordPress, mais il n’y a pas de génération TypeScript, pas de schéma GraphQL, et pas d’intégration WPGraphQL (au-delà de ce que le cœur de WordPress fournit).

Field Forge génère automatiquement des définitions TypeScript et GraphQL pour chaque groupe de champs. Pour les équipes WordPress headless, c’est un avantage de productivité significatif.

Génération TypeScript → · Génération GraphQL →

Support commercial

CMB2 est soutenu par la communauté via les problèmes GitHub. Pour un open source gratuit, c’est standard. Mais pour les équipes qui ont besoin de temps de réponse garantis, de dépannage de sites de production et de corrections de bugs prioritaires, le support communautaire n’est pas suffisant.

Field Forge fournit un support par e-mail prioritaire (réponse en 1 jour ouvrable) sur chaque plan payant.

Versionnage de schéma

Field Forge suit les changements de groupes de champs en tant que révisions au niveau de la base de données avec un retour en arrière en un clic. CMB2 s’appuie sur l’historique git pour le versionnage (puisque les définitions de champ sont dans des fichiers de code). Les deux fonctionnent, mais l’approche de Field Forge capture également les changements pilotés par l’interface admin et fournit une comparaison visuelle des différences.

Pour les utilisateurs de CMB2 migrer vers le mode code-first de Field Forge, git fonctionne toujours. Pour les équipes qui souhaitent un historique au niveau de la base de données en plus de git, Field Forge ajoute cette couche.


L’approche hybride

Field Forge offre en fait le meilleur des deux mondes pour les développeurs CMB2 :

Constructeur visuel pour les membres non-dev de l’équipe

Les éditeurs de contenu et les chefs de projet peuvent créer et éditer des groupes de champs simples dans le constructeur visuel de Field Forge sans toucher au code.

Enregistrement de code pour les développeurs

Les développeurs peuvent enregistrer des groupes de champs via fieldforge_register_field_group() en PHP — même philosophie que CMB2, API différente :

php add_action('fieldforge/init', function() { fieldforge_register_field_group([ 'key' => 'hero-section', 'title' => 'Section Héros', 'fields' => [ [ 'key' => 'hero_title', 'label' => 'Titre Héros', 'type' => 'text', ], [ 'key' => 'hero_image', 'label' => 'Image Héros', 'type' => 'image', ], ], 'location' => [ [ [ 'param' => 'post_type', 'operator' => '==', 'value' => 'page', ], ], ], ]); });

Synchronisation JSON locale pour le flux de travail git

Pour les développeurs qui souhaitent un versionnage git sans enregistrement PHP, la fonction de synchronisation JSON locale de Field Forge enregistre les groupes de champs en tant que fichiers JSON dans le thème. Engagez-vous dans git comme les fichiers PHP de CMB2, mais avec l’édition visuelle comme option.

Fonction de synchronisation JSON locale →


Migration depuis CMB2

Field Forge peut importer des définitions de champs CMB2 :

  1. Scanner les fichiers de thème/plugin pour les rappels de hook CMB2
  2. Analyser les appels new_cmb2_box() et add_field()
  3. Convertir en définitions de groupes de champs Field Forge
  4. Enregistrer soit en tant que groupes de champs visuels (accessibles via l’admin) soit en tant qu’enregistrements de code (laisser en PHP)
  5. Migrer les valeurs de champ existantes de wp_postmeta vers la table personnalisée de Field Forge

Le parseur automatique gère les modèles de code CMB2 standard. Pour des configurations de champs personnalisés inhabituelles ou une logique conditionnelle complexe, un examen manuel peut être nécessaire. Notre équipe de support peut aider avec des cas particuliers.


Quand CMB2 est le bon choix

  • Vous êtes un développeur solo qui n’a jamais besoin que des membres non-dev de l’équipe touchent à la configuration des champs
  • Le gratuit est une contrainte stricte et vous êtes prêt à accepter aucun support payant
  • Vous n’avez jamais besoin d’un constructeur visuel et préférez des flux de travail 100% code-first
  • Vous construisez un site très petit (<500 articles) où la performance n'est pas une préoccupation
  • Vous souhaitez explicitement éviter les plugins WordPress commerciaux pour des raisons philosophiques

Pour tout le reste — en particulier les équipes avec des membres dev/non-dev mixtes, les sites sensibles à la performance, WordPress headless, ou quiconque souhaitant un support payant — Field Forge est un meilleur choix.


Questions fréquemment posées

CMB2 est-il plus rapide que Field Forge ? Non. CMB2 utilise le stockage wp_postmeta, qui a les mêmes problèmes de performance de requête N+1 que ACF. Le stockage de table personnalisé de Field Forge est plus rapide sur tout site avec >500 articles ou des répétiteurs complexes.

Puis-je continuer à utiliser le style code-first de CMB2 dans Field Forge ? Oui. Field Forge a sa propre fonction fieldforge_register_field_group() pour l’enregistrement programmatique des champs. De plus, la synchronisation JSON locale vous permet d’engager des définitions de groupes de champs dans git en tant que fichiers JSON.

Field Forge prend-il en charge tout ce que fait CMB2 ? Field Forge a 32 types de champs principaux ; CMB2 en a ~25. Tous les types de champs courants sont couverts. Pour les types CMB2 de niche non présents dans Field Forge, l’API de type de champ personnalisé vous permet de les ajouter.

La migration depuis CMB2 est-elle automatique ? L’importateur CMB2 de Field Forge gère automatiquement les modèles de code standard. Pour des configurations de champs personnalisés inhabituelles, un examen manuel peut être nécessaire.

Qu’en est-il des flux de travail basés sur git ? La synchronisation JSON locale de Field Forge enregistre les groupes de champs en tant que fichiers JSON dans votre thème — engagez-vous dans git comme les fichiers PHP de CMB2. Alternativement, enregistrez les champs via fieldforge_register_field_group() en PHP pour la même expérience code-first.


Prêt pour un constructeur visuel avec option code-first ?

Obtenez Field Forge — à partir de $35/an →

Remboursement de 14 jours. Importateur CMB2 inclus. Constructeur visuel pour les non-dev, API de code pour les devs.

FAQ

Questions fréquemment posées

Non. CMB2 utilise le stockage wp_postmeta, qui a les mêmes problèmes de performance de requête N+1 que ACF. Le stockage de table personnalisé de Field Forge est plus rapide sur tout site avec >500 articles ou des répétiteurs complexes.

Oui. Field Forge a sa propre fonction fieldforge_register_field_group() pour l'enregistrement programmatique des champs. De plus, la synchronisation JSON locale vous permet d'engager des définitions de groupes de champs dans git en tant que fichiers JSON.

Field Forge a 32 types de champs principaux ; CMB2 en a ~25. Tous les types de champs courants sont couverts. Pour les types CMB2 de niche non présents dans Field Forge, l'API de type de champ personnalisé vous permet de les ajouter.

L'importateur CMB2 de Field Forge gère automatiquement les modèles de code standard. Pour des configurations de champs personnalisés inhabituelles, un examen manuel peut être nécessaire.

La synchronisation JSON locale de Field Forge enregistre les groupes de champs en tant que fichiers JSON dans votre thème — engagez-vous dans git comme les fichiers PHP de CMB2. Alternativement, enregistrez les champs via fieldforge_register_field_group() en PHP pour la même expérience code-first.

Prêt à passer à Field Forge ?

Every feature included. Every plan. Starting at $35/yr.

Assistant IA Forge En ligne

Bonjour ! Je suis l'assistant IA Field Forge. Posez-moi n'importe quelle question sur le plugin — configuration, fonctionnalités, dépannage ou développement.

À l'instant
Propulsé par Forge IA · Parcourir la documentation