Le WordPress d'aujourd'hui, décodé pour les développeurs

Multilingue

Meta Box contre ACF : traduire des champs répétables pour le recrutement

Comparatif technique entre Meta Box et Advanced Custom Fields pour traduire un formulaire d'offre d'emploi avec compétences et avantages en champs répétés.

Par WordPress Développement • 12 octobre 2022 • 4 min de lecture • Aucun commentaire
Meta Box contre ACF : traduire des champs répétables pour le recrutement

D’un côté, Advanced Custom Fields et son couple bien rodé avec WPML. De l’autre, Meta Box et sa collection de composants gratuits, plus permissive mais moins encadrée. Le terrain de comparaison choisi ici : une page d’offre d’emploi avec deux champs répétables, l’un pour les compétences recherchées, l’autre pour les avantages proposés, à traduire en anglais pour une entreprise industrielle qui recrute aussi hors de France.

Ce comparatif s’appuie sur une mise en œuvre réelle des deux solutions sur une copie du même site, pour isoler les différences de comportement plutôt que de se fier à la documentation marketing de chaque extension.

Le champ répétable dans Advanced Custom Fields

Avec ACF Pro, un champ répétable « competences » contenant un sous-champ texte se déclare simplement via l’interface d’administration, sans code. Pour le rendre traduisible avec WPML, il faut ensuite se rendre dans les réglages de traduction de WPML pour les champs personnalisés, et déclarer chaque sous-champ comme « Traduisible » plutôt que « Copier » ou « Ne pas traduire ». Ce réglage se fait une fois par groupe de champs, mais doit être revérifié à chaque ajout d’un nouveau sous-champ, ce qui est facile à oublier.

  • Configuration entièrement en interface graphique, sans code PHP nécessaire
  • Traduction gérée directement dans l’éditeur classique de traduction de WPML
  • Risque d’oubli de configuration à chaque nouveau sous-champ ajouté au répéteur

Le champ répétable dans Meta Box

Meta Box, dans sa version gratuite, propose un champ de type group avec l’option clone activée pour simuler un répéteur. La traduction de ce type de champ n’est pas prise en charge nativement par une interface graphique équivalente à celle de WPML pour ACF : il faut enregistrer manuellement chaque sous-champ comme traduisible via le filtre approprié.

L'essentiel à retenir : Les deux gèrent les répéteurs, la traduction diffère en profondeur ; ACF Pro impose sa propre couche de traduction avec WPML ; Meta Box laisse plus de contrôle mais demande plus de code
add_filter( 'wpml_meta_boxes_to_translate', function( $fields ) {
    $fields[] = 'competence_intitule';
    $fields[] = 'avantage_libelle';
    return $fields;
} );

Cette méthode demande une ligne de code par sous-champ, ce qui représente un investissement initial plus lourd que l’interface graphique d’ACF Pro, mais offre en contrepartie une vision explicite et versionnée (dans un fichier de code, donc suivie par un système de gestion de versions) de ce qui est traduisible et de ce qui ne l’est pas.

Le comportement à l’ajout d’une ligne

Sur ACF, l’ajout d’une nouvelle ligne dans le répéteur en langue source déclenche automatiquement une ligne correspondante, vide, dans la traduction existante, prête à être remplie. Sur Meta Box, sans configuration additionnelle, l’ajout d’une ligne en langue source n’a aucun effet automatique sur la traduction : le rédacteur doit penser à ajouter la ligne manquante lui-même dans chaque langue.

Comparatif synthétique

CritèreACF Pro + WPMLMeta Box + WPML
Configuration initialeInterface graphique complèteCode PHP requis pour chaque sous-champ
Synchronisation des lignes ajoutéesAutomatiqueManuelle sans développement additionnel
CoûtLicence ACF Pro payanteComposants de base gratuits
Contrôle du codeMoins de visibilité, tout en base de donnéesConfiguration versionnable en code

Le formulaire de candidature côté visiteur

Au-delà du contenu de la page, le formulaire de candidature lui-même (souvent construit avec Gravity Forms ou Contact Form 7) doit lui aussi être traduit, avec ses libellés de champ et ses messages de confirmation. Sur ce projet, ce point a demandé un travail équivalent quel que soit le choix retenu pour les champs répétables, ce qui n’a pas influencé le verdict final.

Un conseil que je donne systématiquement aux clients hésitants : choisir en fonction de la compétence disponible en interne pour la maintenance, pas seulement en fonction du prix de la licence.

Verdict

Pour une entreprise disposant déjà d’ACF Pro pour d’autres besoins du site, rester sur ACF pour ce formulaire de recrutement reste le choix le plus économe en temps de développement, grâce à la synchronisation automatique des lignes de répéteur. Pour un projet démarrant de zéro sans budget de licence, Meta Box avec un peu de code personnalisé fait parfaitement le travail, à condition d’accepter un effort de configuration initial plus élevé et une vigilance accrue sur la synchronisation manuelle des lignes.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Partager :

À propos de l'auteur

WordPress Développement

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi