- Статус
- Решено
- Заявлено для
- Advanced Custom Fields Multilingual 1.9.1
- Решено в
- ACFML 1.9.3
- Связанный плагин/тема
- Advanced Custom Fields (ACF)
Обзор проблемы
Плагин Advanced Custom Fields позволяет Вам отображать формы для добавления или изменения записей. Вы даже можете настроить его для создания определенной записи с помощью подобного кода:
$id = 12; acf_form(array( 'post_id' => 'new_post', 'post_title' => true, 'field_groups' => array( $id ) , 'new_post' => array( 'post_type' => 'post', 'post_status' => 'publish' ), 'submit_value' => 'add post' ));
Однако Вы не можете использовать эту форму для отправки контента на дополнительных языках.
Обходное решение
Чтобы эта форма работала на дополнительных языках, Вам потребуется немного адаптировать Ваш код и использовать наш фильтр wpml_object_id:
$id = 12; $transid = apply_filters( 'wpml_object_id', $id , 'acf-field-group' ); acf_form(array( 'post_id' => 'new_post', 'post_title' => true, 'field_groups' => array( $transid ) , 'new_post' => array( 'post_type' => 'post', 'post_status' => 'publish' ), 'submit_value' => 'add post' ));
Фильтр wpml_object_id получает ID группы полей и переводит его для каждого языка. После этого форма сможет успешно отправить Ваш контент.