【问题标题】:How to use setcookie in Page views counter function如何在页面浏览量计数器功能中使用 setcookie
【发布时间】:2013-11-26 06:45:54
【问题描述】:

我有这个页面浏览计数器的功能:

function PageViews($postID) {
$c_key = 'views_count';
$cookie_count = $_COOKIE['views_count_'.$postID];
$count = get_post_meta($postID, $c_key, true);
if(!$cookie_count){
    setcookie('views_count_'.$postID , 'view', time()+999999999);
    if($count == ''){
        $count = 1;
        update_post_meta($postID, $c_key, $count);
        return $count;
    }else{
        $count++;
        update_post_meta($postID, $c_key, $count);
        return $count;
    }
}else{
    return $count;
}
}

当我去查看帖子时,我得到了这个错误:

Warning: Cannot modify header information - headers already sent by (output started at....

我的 cookie 没有设置,这个函数在 function.php 中。这个cookie怎么设置?

【问题讨论】:

    标签: php wordpress cookies


    【解决方案1】:

    您正在尝试在输出已发送到浏览器后设置 cookie。这是不允许的。您需要在生成任何输出之前调用此函数。

    【讨论】:

    • @AdamMo。您可以通过在将任何输出呈现到屏幕之前调用此函数来做到这一点。你没有显示你在哪里调用你的函数,只是函数定义和错误。从错误消息中可以清楚地看出,您在将某些输出发送到屏幕后调用此函数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-18
    • 1970-01-01
    • 2012-07-20
    相关资源
    最近更新 更多