- Stato
- Aperto
- Plugin/tema correlato
- Advanced Custom Fields
- Tag dell’argomento
- Compatibility
Panoramica del problema
Quando utilizzi ACF – Advanced Custom Fields con il plugin ACFML, se un campo Clone è impostato su Copia una volta, i valori del campo non possono essere recuperati nella lingua originale sul front-end. Il problema si verifica quando il gruppo di campi contenente il campo Clone è impostato su Campi diversi tra le lingue o quando il campo è impostato manualmente su Copia una volta in modalità Esperto.
Soluzione alternativa
Assicurati di avere un backup completo del tuo sito prima di procedere.
- Apri il file …wp-content/plugins/acfml/classes/class-wpml-acf-custom-fields-sync.php.
- Cerca la riga 42.
- Sostituisci:
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; } - Con:
// 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; }