Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP会话变量在Wordpress中不总是更新_Php_Wordpress_Session_Session Variables - Fatal编程技术网

PHP会话变量在Wordpress中不总是更新

PHP会话变量在Wordpress中不总是更新,php,wordpress,session,session-variables,Php,Wordpress,Session,Session Variables,我试图将页面的URL传递给会话变量,以便在登录插件中使用它。 登录插件只引用配置文件页面,但不会引用用户所在的上一页。我试过使用wp_get_referer();在登录插件本身中,由于登录表单将其发送到另一个页面,所以根据wordpress,上一个页面就是登录页面 为了做到这一点,我首先在functions.php中添加了以下内容: add_action('init', 'myStartSession', 1); function myStartSession() { if(!sess

我试图将页面的URL传递给会话变量,以便在登录插件中使用它。 登录插件只引用配置文件页面,但不会引用用户所在的上一页。我试过使用wp_get_referer();在登录插件本身中,由于登录表单将其发送到另一个页面,所以根据wordpress,上一个页面就是登录页面

为了做到这一点,我首先在functions.php中添加了以下内容:

add_action('init', 'myStartSession', 1);

function myStartSession() {
    if(!session_id()) {
        session_start();
    }
}
在myheader.php中,我检查用户是否在登录(profiel)页面上。如果他不是,则当前URL应放在会话变量中。如果是,则会话变量不应更改。为此,我使用以下代码,即
开头的正下方:


然而,这似乎只是有时奏效。在登录表单所在的“profiel”页面上,我添加了
,以检查上一个URL是否已保存到会话变量中。问题是,很多时候它指的是我的主页url,而不是以前访问过的页面。我做错了什么

<?php
    if (!is_page('profiel')) {
           $_SESSION["refurl"] = $_SERVER['HTTP_REFERER'];
       }
?>