WordPress标题位置重定向

时间:2013-12-21 19:10:25

标签: php wordpress

这里有WordPress的问题。每当$_SESSION变量等于1时,我想将页面重定向到文件夹(php / adminpage.php)中的特定.php文件。假设会话变量为1:

<?php
 if ((isset($_SESSION['login']) && $_SESSION['login'] == '1')) {
 header ("Location: php/adminpage.php");
?>

但浏览器返回“Not Found”。有什么方法可以让它发挥作用吗?

更新[求助]:使用完整路径。感谢@andrewsi。工作代码:

<?php session_start();  
if ((isset($_SESSION['login']) && $_SESSION['login'] != '')) {
header ("Location: wp-content/themes/euro/php/adminpage.php");
}

&GT;

2 个答案:

答案 0 :(得分:1)

您正在使用相对路径:

 header ("Location: php/adminpage.php");

这会查找当前文件所在的文件夹,并在那里查找adminpage.php

但是WordPress用页面名称和.htaccess做了一些有趣的事情,所以你当前的页面可能不是你想象的那样;使用完整路径通常总是更好,这不太模糊:

标题(“位置:/wp-content/themes/euro/php/adminpage.php”);

在调用它之后不要忘记exit,因此代码执行会在您重定向的页面上停止。

答案 1 :(得分:0)

这是一个实际的网址吗?

header ("Location: php/adminpage.php");

在我看来,这似乎是一个文件系统路径。因为是此网址的本地设置:

localhost

然后这将是该文件的位置?

localhost/php/adminpage.php

另外,我会像这样清理你的代码:

<?php
if (array_key_exists('login', $_SESSION) && isset($_SESSION['login']) && intval($_SESSION['login']) == 1)) {
  header("Location: php/adminpage.php");
  }
?>

使用array_key_exists可以防止未设置索引错误&amp;使用intval确保您有一个数值。