在浏览别人网站的时候发现网站侧栏有个网站统计功能,里面记录着文章总数、标签总数、浏览总量、最后更新、安全运行几天几天等相关信息挺高大尚的。于是冒出了一个想法自己的网站是否也可以加上一个这种功能呢?查看了下对方的网站的源代码发现是使用WordPress建站的,使用Z-BlogPHP程序建站的是否也支持呢?于是抱着喜欢的学习的态度百度查找各种资料,更改最后实现了这个功能。简单写个教程记录下ZBlogPHP如何调用文章总数、置顶数、tag总数等相关代码做一个网站统计功能,同时也给需要同学提供一丢丢帮助。
代码片段
获取文章数量评论的数量标签数量
在主题目录下的include.php配置文件中添加如下代码
function 主题ID_GetCount($total) {
global $zbp;
if ($total == 'article')
$s = $zbp->db->sql->Count(
$zbp->table['Post'],
array(array('COUNT', 'log_ID', 'num')),
array(array('=', 'log_Type', 0), array('=', 'log_Status', 0))
);
if ($total == 'comment')
$s = $zbp->db->sql->Count(
$zbp->table['Comment'],
array(array('COUNT', 'comm_ID', 'num')),
array(array('=', 'comm_IsChecking', 0))
);
if ($total == 'tag')
$s = $zbp->db->sql->Count(
$zbp->table['Tag'],
array(array('COUNT', 'tag_ID', 'num')),
null
);
$s = GetValueInArrayByCurrent($zbp->db->Query($s), 'num');
return $s;
}调用代码
<p>文章总数:{主题ID_GetCount('article')}</p>
<p>评论总数:{主题ID_GetCount('comment')}</p>
<p>标签总数:{主题ID_GetCount('tag')}</p>李洋大佬的方案
//站点信息
function 主题ID_all_views() {
//总访问量
global $zbp;
$all_views = GetValueInArrayByCurrent($zbp->db->Query('SELECT SUM(log_ViewNums) AS num FROM ' . $GLOBALS['table']['Post']), 'num');
return $all_views;
}
function 主题ID_all_artiles() {
//文章总数
global $zbp;
$all_artiles = GetValueInArrayByCurrent($zbp->db->Query('SELECT COUNT(*) AS num FROM ' . $GLOBALS['table']['Post'] . ' WHERE log_Type=\'0\''), 'num');
return $all_artiles;
}
function 主题ID_all_comments() {
//评论总数
global $zbp;
$all_comments = $zbp->cache->all_comment_nums;
return $all_comments;
}调用代码
<p>总访问量:{主题ID_all_views()}</p>
<p>文章总数:{主题ID_all_artiles()}</p>
<p>评论总数:{主题ID_all_comments()}</p>站点总访问量代码也可以使用官网自带的代码
<p>总访问量:{$zbp->cache->all_view_nums}</p>2种方案都可以获取到文章总数、访问量等信息
运行了多少天代码
在网站底部<body>标签中添加如下javascript代码
<script type="text/javascript">
var
s1 = '2016-07-08';//设置为你的建站时间
s1 = new Date(s1.replace(/-/g, "/"));
s2 = new Date(); var days = s2.getTime() - s1.getTime();
var number_of_days = parseInt(days / (1000 * 60 * 60 * 24));
document.getElementById('days').innerHTML = number_of_days;
</script>调用代码
<span id="days">0</span> 天
文章最新更新时间
在需要的地方添加如下代码
<p>{foreach GetList(1) as $newlist}<li><span>{$newlist.Time('Y年m月d日')}</span></li>{/foreach}</p>代码解释
GetList(1)是调用最新1篇文章;
{$newlist.Time('Y年m月d日')}是文章发布时间;
最后实现效果如下

至于选择使用哪种方案,网站是否增加这个统计,CSS样式美化等等自己决定吧,加这个功能纯属个人喜欢,简单写个教程记录下,免得以后需要时到忘记了怎么调用,同时也给需要同学提供一丢丢帮助。
最后感谢各位大佬的无私奉献,像你们致敬~~~

