wordpress - 如何在重力形式中获取当前页面
问题描述
如何在 Gravity Forms 中获取多页表单的当前页面?我有两种可行的解决方案,但都不能完全发挥作用。
function gf_get_current_page() {
return rgpost( 'gform_source_page_number_' . $_POST['gform_submit'] ) ? rgpost( 'gform_target_page_number_' . $_POST['gform_submit'] ) : 1;
}
这个解决方案一直有效,直到有人在点击下一个按钮之前没有填写必填字段。然后它说用户在第 3 页,即使他们仍在第 2 页并且需要修复验证错误。
add_action( 'gform_post_paging', 'get_current_page_num_gf', 10, 3 );
function get_current_page_num_gf( $form, $source_page_number, $current_page_number ) {
echo '<script type="text/javascript">console.log(\'' . $current_page_number . '\');</script>';
}
这在再次验证错误之前运行良好。在这种情况下,它不会更改页码,而是什么都不输出。
我想知道用户一直在哪个页面上。如果他们错过了第 2 步的必答问题,那么我想知道他们仍在第 2 步。
最后,我希望将所有这些信息发送回谷歌分析,并获得关于用户在哪一步没有正常工作的准确信息。
解决方案
听起来您正在寻找:
GFFormDisplay::get_current_page( $form_id );