ACF ermöglicht es Ihnen, Felder und Feldgruppen mithilfe von PHP-Code zu registrieren. Um diese Felder mit WPML zu übersetzen, müssen Sie sie zuerst übersetzbar machen.
Um Felder programmgesteuert zu registrieren, müssen Sie die Funktion acf_add_local_field_group verwenden. Dann können Sie diese ACF-Felder übersetzbar machen, indem Sie die Einstellung wpml_cf_preferences für jedes Feld in Ihrem Code angeben.
Es gibt vier numerische Werte, die Sie für wpml_cf_preferences verwenden können:
- Ignorieren: 0
- Kopieren: 1
- Übersetzen: 2
- Einmal kopieren: 3
Unten sehen Sie ein Beispiel für das Hinzufügen des Schlüssels wpml_cf_preferences zu einer programmgesteuert registrierten Feldgruppe.
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' => '',
] );