Typecho 网站添加总访客数统计和在线人数
zhuanjiao
2022年08月14日 16:31 / 177 阅读 / 0 评论 / 正在检测是否收录...
温馨提示:
本文最后更新于2023年01月13日,已超过18天没有更新,若内容或图片失效,请留言反馈。

总访客代码
首先在Typecho后台外观选择编辑当前外观 functions.php中,添加以下统计代码。

代码**

//总访问量
    function theAllViews()
        {
            $db = Typecho_Db::get();
            $row = $db->fetchAll('SELECT SUM(VIEWS) FROM `typecho_contents`');
                echo number_format($row[0]['SUM(VIEWS)']);
        }

然后在你需要显示的位置(如:footer.php 等)插入以下调用代码。

访客总人数:<?php echo theAllViews();?>

在线人数统计
首先在Typecho后台外观选择编辑当前外观 functions.php中,添加以下统计代码。

//在线人数
    function online_users() {
    $filename='online.txt'; //数据文件
    $cookiename='Nanlon_OnLineCount'; //Cookie名称
    $onlinetime=30; //在线有效时间
    $online=file($filename); 
    $nowtime=$_SERVER['REQUEST_TIME']; 
    $nowonline=array(); 
    foreach($online as $line){ 
        $row=explode('|',$line); 
        $sesstime=trim($row[1]); 
        if(($nowtime - $sesstime)<=$onlinetime){
            $nowonline[$row[0]]=$sesstime;
        } 
    } 
    if(isset($_COOKIE[$cookiename])){
        $uid=$_COOKIE[$cookiename]; 
    }else{
        $vid=0;
        do{
            $vid++; 
            $uid='U'.$vid; 
        }while(array_key_exists($uid,$nowonline)); 
        setcookie($cookiename,$uid); 
    } 
    $nowonline[$uid]=$nowtime;
    $total_online=count($nowonline); 
    if($fp=@fopen($filename,'w')){ 
        if(flock($fp,LOCK_EX)){ 
            rewind($fp); 
            foreach($nowonline as $fuid=>$ftime){ 
                $fline=$fuid.'|'.$ftime."\n"; 
                @fputs($fp,$fline); 
            } 
            flock($fp,LOCK_UN); 
            fclose($fp); 
        } 
    } 
    echo "$total_online"; 
    } 

插入代码
然后在你需要显示的位置(如:footer.php 等)插入以下调用代码。

在线人数:<?php echo online_users() ?>

—— 评论区 ——

昵称
邮箱
网址
取消