我在用wordpress添加带有自定义名称的新会话时遇到问题,
我尝试将其放在function.php
中,这样就可以了:
function myStartSession() {
session_destroy();
session_name('my_session');
session_start();
}
add_action('init', 'myStartSession', 1);
但是当将相同的代码放到single.php之类的其他文件中时不再起作用
我尝试仅将我的函数放在functions.php
中,并将add_action
放在single.php
中,但同样的问题,不起作用
如何使用自定义名称创建会话并在需要时调用
答案 0 :(得分:2)
将代码更改为此:
function myStartSession() {
session_destroy();
session_name('my_session');
session_start();
}
add_action('my_action_name', 'myStartSession');
然后在模板文件中,如您提到的single.php一样,如果要调用函数add:
do_action('my_action_name');
答案 1 :(得分:0)
无需破坏会话,只需检查它是否尚未启动并启动
function myStartSession() {
if( ! session_id() ) {
session_start();
}
$_SESSION['custom_name'] = 'value';
}
add_action('init', 'myStartSession', 1);