Vai al contenuto Vai alla barra laterale
Aggiornato
Marzo 3, 2026

Scopri come impostare le preferenze di traduzione per i campi ACF registrati in PHP e includerle automaticamente nei file JSON generati da ACF.

Impostazione delle preferenze di traduzione per i campi ACF registrati con PHP

Per impostare le preferenze di traduzione per i campi ACF registrati con PHP, devi utilizzare la funzione acf_add_local_field_group e aggiungere wpml_cf_preferences alla definizione di ciascun campo.

Ci sono quattro valori numerici che puoi usare per wpml_cf_preferences:

  • 0Non tradurre. WPML ignora completamente il campo.
  • 1Copia. Il valore del campo viene copiato in tutte le lingue e rimane sincronizzato.
  • 2Traduci. Il valore del campo viene reso disponibile per la traduzione.
  • 3Copia una volta. Il valore del campo viene copiato in tutte le lingue una sola volta, dopodiché può essere modificato in ogni lingua in modo indipendente.

Non sei sicuro di quale opzione di traduzione usare? Consulta l’opzione consigliata per ogni campo ACF.

Qui sotto puoi vedere un esempio di aggiunta della chiave wpml_cf_preferences a un gruppo di campi registrato programmaticamente.

acf_add_local_field_group( [
  'key' => 'group_1',
  'title' => 'My Group',
  'fields' => [
  [
  'key' => 'field_1',
  'label' => 'Sub Title',
  'name' => 'sub_title',
  'type' => 'text',
  'prefix' => '',
  'instructions' => '',
  'required' => 0,
  'conditional_logic' => 0,
  'wrapper' => [
  'width' => '',
  'class' => '',
  'id' => '',
  ],
  'default_value' => '',
  'placeholder' => '',
  'prepend' => '',
  'append' => '',
  'maxlength' => '',
  'readonly' => 0,
  'disabled' => 0,
  'wpml_cf_preferences' => 2, // Questo campo ("Sub Title") verrà tradotto.
  ],
  ],
  'location' => [
  [
  [
  'param' => 'post_type',
  'operator' => '==',
  'value' => 'post',
  ],
  ],
  ],
  'menu_order' => 0,
  'position' => 'normal',
  'style' => 'default',
  'label_placement' => 'top',
  'instruction_placement' => 'label',
  'hide_on_screen' => '',
] );

Sincronizzazione dei tuoi campi con WPML

Dopo aver definito i tuoi campi usando PHP, devi comunicarlo a WPML.

  1. Vai alla pagina ACFStrumenti.
  2. Scorri verso il basso fino a Traduci campi ACF Local JSON e registrati in PHP.
Sincronizzazione dei campi ACF locali con WPML
  1. Nella sezione Sincronizza le preferenze di traduzione per i campi locali, seleziona quando deve avvenire la sincronizzazione. Nella maggior parte dei casi, vorrai utilizzare l’opzione Sincronizza una volta ora e poi cliccare sul pulsante Applica.

WPML sincronizzerà i campi e poi tornerà all’opzione di non sincronizzazione. In questo modo, la sincronizzazione impatta il tuo database solo una volta e nel momento che scegli tu.

Impostazione delle preferenze di traduzione per i campi ACF nei file JSON

Se stai usando la funzione Local JSON di ACF, ACF Multilingual (ACFML) aggiunge automaticamente le preferenze di traduzione per ogni campo nel tuo file JSON. Questo significa che quando esporti e importi file JSON tra siti, le preferenze di traduzione si applicano automaticamente sul sito di destinazione.

Tutto ciò che devi fare è attivare ACFML sia sul sito di origine che su quello di destinazione. Una volta fatto, ogni volta che ACF genera un file JSON, includerà anche le tue preferenze di traduzione.

Se i tuoi file JSON sono stati originariamente generati senza ACFML attivo, attiva ACFML, importa i file JSON nell’interfaccia utente di ACF, imposta le preferenze di traduzione e salva nuovamente i gruppi di campi. Questo rigenera i file JSON con le preferenze incluse.