WordPress重定向始终重定向到404

时间:2012-03-04 08:45:14

标签: php wordpress redirect

在functions.php中,当正确的代码添加到主页时,我使用重定向来显示个人资料页面。它以前工作过,但自从第三方编码器添加了一些不再发生的变化以来。我最初添加了一个isset来删除Undefined index: post_type错误。现在没有更多的错误,但我没有被重定向到配置文件视图,而是被重定向到最后的else语句:404.这是重定向代码:

    function my_template_redirect()
{
    global $wp;
    global $wp_query;

    if (isset($_REQUEST['post_type']))

    { 
    if ($_REQUEST['post_type']=="signup")
    {
        // Let's look for the property.php template file in the current theme
        if (have_posts())
        {
            include(TEMPLATEPATH . '/register.php');
            die();
        }
        else
        {
            $wp_query->is_404 = true;
        }
    }else if ($_REQUEST['post_type']=="viewprofile")
    {
        // Let's look for the property.php template file in the current theme
        if (have_posts())
        {
            include(TEMPLATEPATH . '/viewprofile.php');
            die();
        }
        else
        {
            $wp_query->is_404 = true;
        }
    }
}
    }

个人资料查看代码位于:http://pastebin.com/1Nkxp0Zv。家里的表格代码是:

<div class="container">
                    <form action="<?php echo get_option('home'); ?>/?post_type=viewprofile" method="post">
                    <span>Enter your code here:</span><input name="enterCodeId" type="text" class="inputBox" /><input type="submit" value="GO!" class="go" />
                    </form>
              </div>

为什么我的密钥不再被接受并继续通过最后的else语句获得404-ed的任何想法?

1 个答案:

答案 0 :(得分:1)

看起来唯一的方法就是没有任何帖子,或者如果have_posts()函数返回一个假值。那就是你会发现错误的地方。