Php Wordpress会话变量不工作

Php Wordpress会话变量不工作,php,wordpress,session,Php,Wordpress,Session,我对WordPress会议有意见。我有一个文件“test.php”,用于将变量发布到WordPress站点。它有一个条件:“如果设置了会话变量,则用户可以访问整个WordPress站点;如果未设置会话变量,则用户无法访问该站点” 当我使用test.php将变量发布到WordPress站点时,主页工作正常,但是当我访问诸如“xyz.com/contact”之类的内部页面时,我会收到一个错误Not access,这意味着会话变量在下一页被清除 下面是test.php文件: <form acti

我对WordPress会议有意见。我有一个文件“test.php”,用于将变量发布到WordPress站点。它有一个条件:“如果设置了会话变量,则用户可以访问整个WordPress站点;如果未设置会话变量,则用户无法访问该站点”

当我使用test.php将变量发布到WordPress站点时,主页工作正常,但是当我访问诸如“xyz.com/contact”之类的内部页面时,我会收到一个错误
Not access
,这意味着会话变量在下一页被清除

下面是test.php文件:

<form action="wordpress-site-link" method="POST">
    <input type="submit" name="var" value="go"/>
</form>
只需在functions.php中的“init”上挂接一个函数,如下所示:

function ur_theme_start_session()
{
    if (!session_id())
        session_start();
}
add_action("init", "ur_theme_start_session", 1);
然后你可以使用你的会话变量


我希望这对您有所帮助。

不要假设会话已开始。Wordpuke可能已经输出了其他内容,导致“headers ready sent”错误。检查
session_start()
的返回值-失败时为布尔值false。检查剩余页面是否与主页不同,例如,主页以www开头,而剩余页面不相同。在这种情况下,会话只为主页设置。您是否在文件Health.PHP中删除<代码> SeSistOxSistar()/代码>?如果由于某种原因必须使用本机会话(还有其他方法),您应该在完成该会话后考虑关闭会话。
function ur_theme_start_session()
{
    if (!session_id())
        session_start();
}
add_action("init", "ur_theme_start_session", 1);