【问题标题】:PHP Switch using Form Promo Code - In Wordpress使用表单促销代码的 PHP 切换 - 在 Wordpress 中
【发布时间】:2013-11-13 01:29:00
【问题描述】:

我有一个简单的表格。我需要不同的促销代码将您重定向到不同的页面。示例:1234 会将您发送到 example.com。 2323 会将您转到 newwebsite.com。我了解如何使用表单和 php 执行此操作,但我需要客户端能够输入代码并自行重定向。似乎没有任何插件可以满足我的需要。我使用重力形式,但这仍然需要客户端编辑模板文件。这是我的代码:

    <form action="switch.php" method="post">
    <input type="text" name="codes" id="codes" />
    <input type="submit" /> 

    <?php $i = $_POST; ?>
    <?php switch($_POST['codes']) {
        case "1234":
             header("Location: http://www.myfoursquare.net/archives");
            break;
        case "2222":
           header("Location: http://www.myfoursquare.net/archives");
            break;
        case "3333":
              header("Location: http://www.myfoursquare.net/archives");
            break;
            }
    ?></form> 

这按预期工作。不知道如何使这个 wordpress 对客户友好。 谢谢。

【问题讨论】:

    标签: php wordpress forms


    【解决方案1】:

    您可以添加一个Meta Box 以选择only shows up when a given Page Template。在其中,一些可重复的字段,用户在其中输入一系列 代码 + 重定向 URL

    然后,在模板页面中,它将类似于:

    # Gets the array of CODE/URL pairs
    $all_codes = get_post_meta( $post->ID, 'all_codes', true );
    # Get the URL correspondent to the posted 'codes'
    $redirect = $all_codes[ $_POST['codes'] ];
    # Do the redirect
    header("Location: $redirect");
    

    $all_codes 的结构实际上取决于元框的实现方式。
    This search query 有很多元框的示例。
    还有this other如何处理可重复字段。

    插件Advanced Custom Fields 自动完成所有这些,可重复的功能是一个高级插件。 Custom Content Type Manager 具有内置功能。

    PS:重要的是always validate and sanitize所有用户输入

    【讨论】:

    • 这看起来比我刚刚尝试的要容易得多(页面上的一堆不同的自定义字段)。如果我使用自定义内容类型管理器可重复字段,您能告诉我它是如何适应的吗?是否有两个单独的文本框...一个用于代码,一个用于 url?
    • 你真的必须玩它才能让它正确。您是否有本地安装进行测试?但正常情况是:1)添加可重复字段 2)配置子字段 3)查看插件文档以了解如何提取数据
    • 我在上面编辑了我的代码,如果你有希望将这些点联系起来的话。
    • 我很确定这不是你的意图,但这变成了Chameleon Question。如果您最初的问题得到解决,您应该打开new Q。问答网站不适用于这种跟进支持。
    • 对不起。我在 wordpress.stackexchange 中打开了一个新问题。不过感谢您的指导。
    猜你喜欢
    • 2021-10-20
    • 2014-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-27
    • 2018-02-15
    • 2017-07-23
    相关资源
    最近更新 更多