Saltar al contenido Saltar a la barra lateral
Actualizado
marzo 3, 2026

Aprenda a configurar las preferencias de traducción para campos de ACF registrados en PHP e incluirlas automáticamente en los archivos JSON generados por ACF.

Configuración de preferencias de traducción para campos de ACF registrados con PHP

Para configurar las preferencias de traducción para campos de ACF registrados con PHP, debe utilizar la función acf_add_local_field_group y añadir wpml_cf_preferences a la definición de cada campo.

Hay cuatro valores numéricos que puede usar para wpml_cf_preferences:

  • 0No traducir. WPML ignora el campo por completo.
  • 1Copiar. El valor del campo se copia a todos los idiomas y se mantiene sincronizado.
  • 2Traducir. El valor del campo se pone a disposición para su traducción.
  • 3Copiar una vez. El valor del campo se copia a todos los idiomas una vez, después de lo cual se puede editar en cada idioma de forma independiente.

¿No está seguro de qué opción de traducción utilizar? Consulte la opción recomendada para cada campo ACF.

A continuación, puede ver un ejemplo de cómo agregar la clave wpml_cf_preferences a un grupo de campos registrado programáticamente.

acf_add_local_field_group( [
  'key' => 'group_1',
  'title' => 'Mi grupo',
  'fields' => [
  [
  'key' => 'field_1',
  'label' => 'Subtítulo',
  '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, // Este campo (“Subtítulo”) se traducirá.
  ],
  ],
  'location' => [
  [
  [
  'param' => 'post_type',
  'operator' => '==',
  'value' => 'post',
  ],
  ],
  ],
  'menu_order' => 0,
  'position' => 'normal',
  'style' => 'default',
  'label_placement' => 'top',
  'instruction_placement' => 'label',
  'hide_on_screen' => '',
] );

Sincronización de sus campos con WPML

Tras definir sus campos mediante PHP, debe informar a WPML sobre ellos.

  1. Vaya a la página ACFHerramientas.
  2. Desplácese hacia abajo hasta Traducir campos registrados en Local JSON y PHP de ACF.
Sincronización de campos locales de ACF con WPML
  1. En la sección Sincronizar preferencias de traducción para campos locales, seleccione cuándo debe realizarse la sincronización. En la mayoría de los casos, querrá utilizar la opción Sincronizar una vez ahora y luego hacer clic en el botón Aplicar.

WPML sincronizará los campos y, a continuación, volverá a la opción de no sincronización. De este modo, la sincronización solo afecta a su base de datos una vez y en el momento que usted elija.

Configuración de preferencias de traducción para campos de ACF en archivos JSON

Si está utilizando la función Local JSON de ACF, ACF Multilingual (ACFML) añade automáticamente las preferencias de traducción para cada campo en su archivo JSON. Esto significa que cuando exporte e importe archivos JSON entre sitios, las preferencias de traducción se aplicarán automáticamente en el sitio de destino.

Todo lo que necesita hacer es activar ACFML tanto en el sitio de origen como en el de destino. Una vez hecho esto, cada vez que ACF genere un archivo JSON, también incluirá sus preferencias de traducción.

Si sus archivos JSON se generaron originalmente sin ACFML activo, active ACFML, importe los archivos JSON en la interfaz de usuario de ACF, configure las preferencias de traducción y vuelva a guardar los grupos de campos. Esto regenera los archivos JSON con las preferencias incluidas.