我想知道是否有人可以让我知道如何将一个变量传递给Wordpress中的另一个页面
我需要能够使用get_the_ID();
函数来设置一个可以从任何页面访问的变量
我能将变量存储在会话中还是会出现安全问题?
我完全走错了路,因为说实话,我不知道我在做什么。任何帮助都会有很长的路要走。
干杯
答案 0 :(得分:1)
只要您没有获得任何用户输入(否则sanitize/encrypt
您的值),使用会话不是安全问题。
继续使用它,就像这样
<?php
$_SESSION['next-page-id'] = get_the_ID(); // once set
现在,在整个应用程序中,您可以像这样访问会话变量:
if ( isset( $_SESSION['next-page-id'] ) ) { // remember to check if it set or not
echo $_SESSION['next-page-id'];
}
<强>编辑:强>
您不必在每个页面的顶部使用session_start()
,而应在init
hook中添加一个函数。
只需将此微小代码粘贴到您的functions.php
文件
function session_initialize() {
if ( ! session_id() ) {
session_start();
}
}
add_action( 'init', 'session_initialize' );
用户是否可以查看会话变量?
不,用户根本无法查看您的会话。如果他们无法访问您的文件。
wordpress如何阻止用户创建自己的会话变量?
请记住,Wordpress在其整个应用程序中不使用会话(仅限Cookie)。用户无法创建会话变量。如上所述,他们必须将代码写入您的php文件(或者如果任何插件或主题易受攻击,他们会以某种方式将代码注入您的应用程序。)