1

我在使用Easy Digital Downloads - Frontend Submissions插件创建的提交表单上使用Advanced Custom Fields插件集成了自定义字段。

自定义字段在前端正确显示,但在编辑/更新表单时不保存/更新值。默认表单字段按预期工作 - 只是自定义字段不起作用。

根据Easy Digital Downloads - Frontend Submissions附加指南,我添加了以下挂钩,将自定义字段集成到表单中。

add_action('some-hook-name', 'my_modify_dd_form', 10, 3);
function my_modify_dd_form($form_id, $post_id, $form_settings) {
  $args = array(
      'post_id' => $post_id,
      'field_groups' => array(16),
      'form' => false,
      'return' => ''
  );
  acf_form( $args );
}

使用上面的钩子,我可以在前端填充 ACF 字段 - 提交表单,但即使添加acf_form_head();到模板标题中,值/更改也不会保存/更新。

有关前端提交的更多信息 - 表单生成器 Acton Hooks可以在https://docs.easydigitaldownloads.com/article/962-frontend-submissions-form-b ​​uilder 阅读

我错过了什么吗?

4

1 回答 1

0

最后,我自己设法解决了这个问题。

由于我已将表单选项设置为 false,因此我必须手动处理 ACF 字段(通过检查 post 变量)并使用 ACF 函数更新字段值update_field

例如。

if ( !empty( $_POST['acf']['field_5ecb0c4663b4r'] ) ) {
    $mood = $_POST['acf']['field_5ecb0c4663b4r'];
    update_field( 'field_5ecb0c4663bf7', $mood, $post_id );
}

wp_ajax_fes_submit_submission_form并且wp_ajax_nopriv_fes_submit_submission_form是处理Easy Digital Downloads - Frontend Submissions add-on的表单提交过程的钩子。

我希望这将有助于寻找类似解决方案的人。

于 2020-07-01T06:02:37.403 回答