Доступ к странице только через форму Gravity

У меня есть многоэтапная форма, созданная с помощью Gravity Forms. После успешного завершения я настроил перенаправление, чтобы пользователь отправлялся на страницу продукта WooCommerce. Я хочу, чтобы это был единственный способ доступа к этой странице, поскольку им необходимо заполнить форму, прежде чем им будет разрешено приобрести продукт. Им не нужно регистрироваться на сайте, поэтому членские роли не могут быть использованы.

Кто-нибудь знает, как я могу это сделать?

Буду признателен за любую оказанную помощь.

0

Решение

Есть несколько способов сделать это. Простой (но очень неуклюжий) способ — защитить паролем страницу продукта, а затем предоставить пароль пользователю через подтверждающее сообщение формы. Это не идеальный пользовательский опыт …

Альтернативное решение — установить куки при отправке формы. На странице Product вы можете установить фильтр через хук WordPress «the_content», чтобы показать / скрыть содержимое страницы в зависимости от того, установлен ли этот cookie. я имею потрясающий плагин Gravity Forms для этого, но вот основы:

Установить Cookie на отправку формы

add_action( 'gform_pre_submission', 'set_form_submitted_cookie' );
function set_form_submitted_cookie( $form ) {
setcookie( 'gf_form_submitted', $form['id'], null, '/' );
}

Проверьте, существует ли Cookie

add_filter( 'the_content', 'maybe_hide_the_content' );
function maybe_hide_the_content( $content ) {

if( ! isset( $_COOKIE['gf_form_submitted'] ) ) {
$content = 'You do not have access to this page.'
}

return $content;
}

Все завернуто с красивым бантом

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

http://gravitywiz.com/submit-gravity-form-access-content/

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]