是否创建表单并根据用户回答显示自定义菜单?

时间:2019-09-16 作者:Jasmine Vary

我想创建一个“用户指南”表单,允许用户回答问题并选择他们感兴趣的类别。在他们选择类别并回答问题后,我希望它将他们重定向到一个带有自定义侧栏菜单的页面,其中包含他们选择的类别。

我使用的是重力表单,它让我让用户选择他们感兴趣的类别,但是,我不知道如何将其与根据他们选择的答案定制的侧栏菜单连接。

如果您对我可以使用的插件或代码有任何建议,我将不胜感激,谢谢。

2 个回复
SO网友:Md. Mrinal Haque

实现目标的简单方法,使用WPForms这具有如下特征Multi page form

SO网友:Mike Baxter

如果您熟悉Wordpress主题修改,那么您想做的事情相对容易。下面假设您至少熟悉PHP,希望Wordpress Theme 修改如果没有,我可以在后续更新中提供一些额外的链接来回答这个问题。。。请告诉我。

First step: Gravity表单文档中有“基于其他提交填充表单”的说明。具体请参见"Setting up the first form to send data using confirmations". 使用这些说明将表单字段传递到站点中所需的页面。

Next: 你需要modify your theme\'s page template(s) (或create a child theme) 使用这些参数计算custom nav menu, dynamic sidebar, 或其他要显示的对象。使用$_GET 要提取类似于以下内容的参数:

if (isset($_GET[\'Param_A\'])){
    switch ($_GET[\'Param_A\']){
        case "User_Response_A":
            dynamic_sidebar( \'custom-sidebar-a\' );
            break;
        case "User_Response_B":
            dynamic_sidebar( \'custom-sidebar-b\' );
            break;
        case "User_Response_C":
            dynamic_sidebar( \'custom-sidebar-c\' );
            break;
        default:
            dynamic_sidebar( \'custom-sidebar-WHATEVER\' );
    } // end switch
} // end if
如果您对PHP感到满意,但对Wordpress Theme 修改后,您可以使用中间插件,如Insert PHP Code Snippet 将我提供的PHP的修改版本添加到任何小部件区域。

如果您想变得非常棘手,可以使用$_GET 值设置cookie值,然后使用AJAX调用实时更改侧栏/菜单内容。设置起来要复杂得多。请提交另一个Question, 如果你想走那条路。

相关推荐

如何让ToggleControl Gutenberg组件在PHP块中工作

我的一切都基于此:https://gist.github.com/pento/cf38fd73ce0f13fcf0f0ae7d6c4b685d 只是切换没有得到切换的视觉表示。有关于这个的教程吗?我发现的一切都是复杂的“真实的”阻止了大量的进口,而这种react风格返回了我现在不需要的东西。我只是想知道如何让开关工作。PHP<?php function register_gb_block() { // ... register_assets