- Statut
- Ouvert
- Extension/thème associé
- Advanced Custom Fields
- Étiquettes de sujet
- Compatibility
Aperçu de l’anomalie
Lors de l’utilisation d’ACF – Advanced Custom Fields avec l’extension ACFML, si un champ Clone est défini sur Copier une fois, les valeurs du champ ne peuvent pas être récupérées dans la langue d’origine sur l’interface publique. Le problème se produit lorsque le groupe de champs contenant le champ Clone est défini sur Champs différents selon les langues ou lorsque le champ est défini manuellement sur Copier une fois en mode Expert.
Solution de contournement
Assurez-vous de disposer d’une sauvegarde complète de votre site avant de continuer.
- Ouvrez le fichier …wp-content/plugins/acfml/classes/class-wpml-acf-custom-fields-sync.php.
- Recherchez la ligne 42.
- Remplacez :
public function clean_empty_values_for_copy_once_field( $value, $post_id, $field ) { if ( '' === $value && ! $this->value_has_been_emptied( $field ) && isset( $field['wpml_cf_preferences'] ) && WPML_COPY_ONCE_CUSTOM_FIELD === $field['wpml_cf_preferences'] && ! $this->isFieldType( $field, 'group' ) ) { $value = null; } return $value; } - Par :
// WPML Workaround for compsupp-7767 public function clean_empty_values_for_copy_once_field( $value, $post_id, $field ) { if ( '' === $value && ! $this->value_has_been_emptied( $field ) && isset( $field['wpml_cf_preferences'] ) && WPML_COPY_ONCE_CUSTOM_FIELD === $field['wpml_cf_preferences'] && ! $this->isFieldType( $field, 'group' ) && ! $this->isFieldType( $field, 'clone' ) ) { $value = null; } return $value; }