gpt4 book ai didi

php - 如何在 Wordpress 中使用 session_start?

转载 作者:IT王子 更新时间:2023-10-28 23:59:08 25 4
gpt4 key购买 nike

我正在创建一个双语网站,并决定使用 session_start 来确定页面的语言,方法如下:

session_start();    
if(!isset($_SESSION['language'])){
$_SESSION['language'] = 'English'; //default language
}

问题是它与 Wordpress 冲突,我得到以下信息:

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/neurosur/public_html/v2/wp-content/themes/default/header.php:8) in /home/neurosur/public_html/v2/wp-content/themes/default/region.php on line 13

有办法解决这个问题吗?

最佳答案

编辑

WordPress 在运行 header.php 文件之前发送 header 信息。因此,在 header.php 中启动 session 可能仍会与 wordpress 发送的 header 信息发生冲突。在 init 上运行它可以避免该问题。 (来自 jammypeach 的评论)

在您的 functions.php 文件中写入以下代码:

function register_my_session()
{
if( !session_id() )
{
session_start();
}
}

add_action('init', 'register_my_session');

现在如果你想在 session 中设置数据,这样做

$_SESSION['username'] = 'rafi';

关于php - 如何在 Wordpress 中使用 session_start?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11797351/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com