ACF le permite registrar campos y grupos de campos utilizando código PHP. Para traducir estos campos con WPML, primero debe hacerlos traducibles.
Para registrar campos programáticamente, necesita utilizar la función acf_add_local_field_group. Luego, puede hacer que estos campos ACF sean traducibles especificando la configuración wpml_cf_preferences para cada campo en su código.
Hay cuatro valores numéricos que puede usar para wpml_cf_preferences:
- Ignorar: 0
- Copiar: 1
- Traducir: 2
- Copiar una vez: 3
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' => '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, // This field ("Sub Title") will be translated.
],
],
'location' => [
[
[
'param' => 'post_type',
'operator' => '==',
'value' => 'post',
],
],
],
'menu_order' => 0,
'position' => 'normal',
'style' => 'default',
'label_placement' => 'top',
'instruction_placement' => 'label',
'hide_on_screen' => '',
] );