Я хочу пропустить конкретную форму WP Forms, если она уже отправлена ​​пользователем - PullRequest
1 голос
/ 27 сентября 2019

У меня есть форма согласия, которую я хотел показать, когда посетитель зашел на эту страницу, пока посетитель не отправит форму.После того как посетитель отправил эту подписку на определенную страницу, эта страница не должна появляться, вместо этого перенаправить на другую страницу.

1 Ответ

1 голос
/ 27 сентября 2019

Вы можете достичь этого, используя обработчик завершенных форм wp.

    function wpform_set_submitted_cookie( $fields, $entry, $form_data, $entry_id ) {

    // Set the third parameter to specify a cookie expiration time,
    // otherwise it will last until the end of the current session.
    setcookie( 'wpform_form_submitted', 'true' );
}
add_action('wpforms_process_complete_{form-ID}', 
'wpform_set_submitted_cookie',10,4);


function wpform_protect_confirmation_page() {
    if(is_page('{your-page-slug}')&&isset( $_COOKIE['wpform_form_submitted'])) {
        wp_redirect( home_url( '/' ) );
        exit();
    }
}
add_action( 'template_redirect', 'wpform_protect_confirmation_page' );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...