pasckr 发表于 2016-5-12 18:19:44

wordpress无插件实现在线人数统计功能






                不用插件实现wordpress的在线人数统计功能,其实很简单,写一个检测在线人数的函数(如下代码段),将函数放到博客主题function.php当中,然后在sidebar或者footer文件中调用即可!
//检测在线人数function counter_user_online($temp){        $user_online = "count.txt"; //保存人数的文件,网站根目录下        touch($user_online);//如果没有此文件,则创建        $timeout = 120;//120秒内没动作者,认为掉线        $user_arr = file_get_contents($user_online);        $user_arr = explode('#',rtrim($user_arr,'#'));        $temp = array();        foreach($user_arr as $value){                $user = explode(",",trim($value));                if (($user != getenv('REMOTE_ADDR')) && ($user > time())) { //如果不是本用户IP并时间没有 超时则放入到数组中                        array_push($temp,$user.",".$user);                }        }        array_push($temp,getenv('REMOTE_ADDR').",".(time() + ($timeout)).'#'); //保存本用户的信息        $user_arr = implode("#",$temp);        //写入文件        $fp = fopen($user_online,"w");        flock($fp,LOCK_EX); //flock() 不能在NFS以及其他的一些网络文件系统中正常工作        fputs($fp,$user_arr);        flock($fp,LOCK_UN);        fclose($fp);        echo count($temp);}  代码如上,至于如何在页面显示人数的调用方法就不用多说了吧。
页: [1]
查看完整版本: wordpress无插件实现在线人数统计功能