- Statut
- Résolu
Aperçu de l’anomalie
Pour certains types de champs ACF, il n’est pas possible de dupliquer correctement le contenu.
Solution de contournement
Si vous utilisez l’un des champs listés dans la section Description complète de cet article, vous devez ajouter cet extrait au fichier functions.php de votre thème pour que la duplication fonctionne correctement.
function wpml_fix_acf_duplication( $value_to_filter, $target_language, $meta_data ) {
// Field names should be placed into following array.
$fields = array(
'test_taxonomy' => 'some_taxonomy_name',
'test_image' => 'attachment',
'test_file' => 'attachment',
'test_gallery' => 'attachment',
'test_post_object' => 'post',
'test_page_link' => 'page'
);
if ( array_key_exists( $meta_data['key'], $fields ) ) {
$value = maybe_unserialize( $value_to_filter );
if ( is_array( $value ) ) {
// If custom field value contain array of IDs to translate, usually used for gallery and taxonomy field types.
$translated_ids = array();
foreach ( $value as $v ) {
$translated_ids[] = apply_filters( 'wpml_object_id', $v, $fields[ $meta_data['key'] ], true, $target_language );
}
return maybe_serialize( $translated_ids );
} else {
// If custom field value contain single ID to translate, usually used for image and file field types.
$translated_id = apply_filters( 'wpml_object_id', $value, $fields[ $meta_data['key'] ], true, $target_language );
return $translated_id;
}
}
return $value_to_filter;
}
add_filter( 'wpml_duplicate_generic_string', 'wpml_fix_acf_duplication', 999, 3 );
REMARQUE : Vous devez remplacer les paires key => value du tableau par les valeurs appropriées.
Remplacez les clés telles que : ‘test_taxonomy’, ’test_image’, ’test_file’, etc. par les noms de champs de votre site, comme illustré dans l’exemple d’image suivant.

Remplacez les valeurs telles que : ‘some_taxonomy_name’, ‘attachment’, post, page, etc. en conséquence.
Il s’agit du type d’élément auquel l’ID appartient. Il peut s’agir de post, page, attachment, {custom post type key}, nav_menu, nav_menu_item, category, post_tag, {custom taxonomy key}
Pour en savoir plus, veuillez consulter notre documentation sur les hooks ici.