【问题标题】:Access page via a Gravity form submission only仅通过 Gravity 表单提交访问页面
【发布时间】:2015-03-06 22:16:31
【问题描述】:

我有一个使用 Gravity Forms 创建的多阶段表单。成功完成后,我设置了重定向,以便将用户发送到 WooCommerce 产品页面。我希望这是访问该页面的唯一方式,因为他们需要完成表格才能被允许购买产品。他们不必在网站上注册,因此不能使用会员角色。

有人知道我该怎么做吗?

非常感谢任何帮助。

【问题讨论】:

    标签: php forms wordpress gravity-forms-plugin


    【解决方案1】:

    有几种方法可以做到这一点。一种简单(但非常笨拙)的方法是对产品页面进行密码保护,然后通过表单的确认消息向用户提供密码。这是一种不太理想的用户体验...

    另一种解决方案是在提交表单时设置 cookie。在产品页面上,您可以通过 WordPress 的“the_content”挂钩设置过滤器,以根据是否设置了该 cookie 来显示/隐藏页面的内容。我有an awesome Gravity Forms plugin,但这里是基础知识:

    在提交表单时设置 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/

    【讨论】:

      猜你喜欢
      • 2014-09-17
      • 2011-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多