【问题标题】:Gravity form gform_validation filter not working重力形式 gform_validation 过滤器不起作用
【发布时间】:2017-02-02 15:55:27
【问题描述】:

我正在尝试将数据发布到第三方 API,并且根据我需要取消表单提交的响应。但我仍然在重力表单后端获取表单条目。

这是我的代码:

add_filter('gform_validation_10', 'stop_form_submission_validation');
function stop_form_submission_validation($validation_result){
    $form = $validation_result['form'];

    foreach ( $form['fields'] as $field ) {

        //NOTE: replace 1 with the field you would like to validate
        if ( $field->id == 1 ) {
            // set the form validation to false
            $validation_result["is_valid"] = false;
            $field->failed_validation  = true;
            $field->validation_message = 'This field is invalid!';
            break;
        }
    }
    $validation_result['form'] = $form;
    return $validation_result;
}

【问题讨论】:

    标签: php gravity-forms-plugin


    【解决方案1】:

    您需要通过引用来分配数组值。否则,您正在修改数组项的副本,而不是项本​​身。

    改变这个:

        foreach ( $form['fields'] as $field ) {
    

    到这里:

        foreach ( $form['fields'] as &$field ) {
    

    【讨论】:

    • 你的表单有 id 10 吗?
    【解决方案2】:

    好的,我找到了解决方案here

    GFAPI::delete_entry( $entry['id'] );

    【讨论】:

      猜你喜欢
      • 2013-05-28
      • 1970-01-01
      • 2016-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-16
      • 2015-05-26
      • 2017-12-16
      相关资源
      最近更新 更多