Как получить текущую страницу в Gravity Forms - PullRequest
0 голосов
/ 06 декабря 2018

Как получить текущую страницу многостраничной формы в 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.

В конце я надеюсь отправить всю эту информацию обратно в Google Analytics иполучение точной информации о том, на каком этапе находится пользователь, работает плохо.

1 Ответ

0 голосов
/ 08 декабря 2018

Звучит так, как вы ищете:

GFFormDisplay::get_current_page( $form_id );

...