我正在尝试使用下面的代码跟踪Wordpress中的页面URL。当我回显代码时,它显示良好。当我试图将其保存到MySQL时,它显示了一个完全不同的URL。
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
echo $pageURL;
显示 mysite.com/foo/bar
通过update_user_meta($user->ID, 'last_active_url', $pageURL);
添加MySQL
wp_usermeta。last_active_url字段显示mysite.com/fontawesome/css/bootstrap.min.css
关于变量变化的原因有什么提示吗?
这是一个不同的请求
如果下面显示mysite.com/foo/bar
echo $pageUrl;
db数据显示mysite.com/fontawesome/css/bootstrap.min.css
那么最后更新db的请求不是你正在调试的请求。
页面正在请求丢失的css文件
最有可能发生的事情是:
- 请求
/foo/bar
- 将'last_active_url'写入
/foo/bar
- Html呈现
- 请求
/fontawesome/css/bootstrap.min.css
文件不存在。 - 将'last_active_url'写入
/fontawesome/css/bootstrap.min.css
。在单个请求中,变量没有变化——它会立即被下一个请求覆盖,这是生成的HTML请求的资产。