WPML
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;
    }

Tutti i problemi noti →