会话ID在导航到其他页面WordPress时不断变化



当前session ID在每个请求上都会不断变化。 我有一个名为session.php的文件。

它有以下php代码:

<?php
session_start();
$s_id = session_id();
print_r($s_id);
?>

每次我导航到其他页面时,此ID都会更改。这怎么可能?

我禁用了所有插件,并且我的函数中只有这个插件.php

<?php
function start_session() {
if( !session_id() ) {
session_start();
}
}
add_action('init', 'start_session', 1);

每次我重新加载datum.php它都会显示不同的session id. 在其他WordPress网站上,它没有。

首先创建一个session_id。然后将其存储到会话变量中。 下次检查session_id会话值是否退出。 如果退出,则从会话获取上一个会话 ID 值。 否则,创建新的会话 ID。

完成任务(示例注销(后,删除会话变量。

WordPress中启动会话的方法如下所示,因此请先更新代码进行检查

function start_session() {
if( !session_id() ) {
session_start();
}
}
add_action('init', 'start_session', 1);

此外,如果您想将会话用于woocommerce,那么也有现有的会话,您可以像使用它一样使用它

WC()->session->set( 'name_for_your_data' , $data );
WC()->session->get( 'name_for_your_data' );

有关woocommerce会话类的更多功能和信息,请点击此处 https://docs.woocommerce.com/wc-apidocs/class-WC_Session.html

希望这可以帮助您解决会话问题

最新更新