当人们访问我的主页index.php时,我希望将它们重定向到index.php?page_id = 2
为此,我在头部添加了一个简单的html代码:
<meta HTTP-EQUIV="REFRESH" content="0; url=http://www.domain.com/index.php?page_id=2">
问题是我的站点的目标和所有其他页面运行它循环的代码。我正在使用Wordpress。是否有任何解决办法在访问index.php时将它们指向index.php?page_id = 2而不进行循环?
非常感谢任何协助。
答案 0 :(得分:0)
基本上,当index.php在其查询字符串上包含参数(例如page_id)时,您需要确保未插入“元刷新”。
如果您只是在PHP中执行此操作,您将编写一个if语句,使用$ _GET哈希表检查查询字符串的内容,即如果$ _GET [“page_id”] ...
http://www.php.net/manual/en/reserved.variables.get.php
在wordpress(我不太了解)中,你可能会发现一个完全不同的解决方案就是你想要的。例如,元刷新实际上被认为不如所谓的HTTP重定向 - 具有相同效果的标头。
在PHP中,它是:
http://php.net/manual/en/function.http-redirect.php
我注意到wordpress文档包含对重定向实用程序的引用;我试图提供链接,但StackOverflow阻止我再包含这些链接。在其文档中搜索“重定向”可能会有所帮助。
一般情况下,我希望看到if语句决定是否使用PHP的机制或Wordpress来发布重定向。
我希望这会有所帮助。
答案 1 :(得分:0)
要避免无限循环,只需检查$ _GET变量是否为空。如果是,请执行重定向:
if (empty($_GET))
{
header('Location: index.php?page_id=2');
}