0

带有 Ninja Form (v3) 的 WordPress 页面有一个单选列表,我需要根据传入的 URL 变量预先选择一个特定的单选按钮:例如http://the-website.com/ninja- form-page/?tour=2将导致在加载表单页面时预先选择列表中的第二个单选按钮(值=2)。

这在 Ninja-Forms v2x 中很容易实现,在 functions.php 中使用过滤器检查 URL 变量并遍历表单字段标签以进行匹配(http://www.wpmusketeer.com/pre-populate-ninja -forms-fields-from-url-parameters/)。但我无法在 v3x 中找到解决方案。表单字段的呈现方式似乎完全不同,并且 v3x 文档中没有像 v2x 中那样的 API 部分。

4

1 回答 1

2

使用“ninja_forms_render_default_value”过滤器:

add_filter( 'ninja_forms_render_default_value', 'my_ninja_forms_pre_populate', 10, 3 );
function my_ninja_forms_pre_populate( $default_value, $field_type, $field_settings ){
    if( 'field_key' == $field_settings[ 'key' ] ){
        $default_value = 2;
    }
    return $default_value;
}

当然 - 将您的 URL 变量注册为“query_vars”

于 2017-02-14T13:22:48.583 回答