By 2013-12-24 更新:
支持版本:所有emlog版本。
这个功能只是方便大家知道自己有多少标签,标签统计就是统计有多少个标签,我把统计的信息放在站点信息里面。想看效果直接看下面的图。
因为是HACK emlog程序,所以修改前请先备份。
PS:大家也知道标签多了,严重影响发文章的速度,因为生成的标签缓存太大导致的。[break]
1、修改include/lib/cache.php文件中的站点统计,添加标签统计缓存。大概在126-147行。
private function mc_sta() { $sta_cache = array(); $lognum = $this->db->num_rows($this->db->query("SELECT gid FROM " . DB_PREFIX . "blog WHERE type='blog' and hide='n' ")); $draftnum = $this->db->num_rows($this->db->query("SELECT gid FROM " . DB_PREFIX . "blog WHERE type='blog' and hide='y'")); $comnum = $this->db->num_rows($this->db->query("SELECT cid FROM " . DB_PREFIX . "comment WHERE hide='n' ")); $hidecom = $this->db->num_rows($this->db->query("SELECT gid FROM " . DB_PREFIX . "comment where hide='y' ")); $tbnum = $this->db->num_rows($this->db->query("SELECT gid FROM " . DB_PREFIX . "trackback ")); $twnum = $this->db->num_rows($this->db->query("SELECT id FROM " . DB_PREFIX . "twitter ")); $tagnum = $this->db->num_rows($this->db->query("SELECT tid FROM " . DB_PREFIX . "tag"));//统计标签条数 $sta_cache = array( 'lognum' => $lognum, 'draftnum' => $draftnum, 'comnum' => $comnum, 'comnum_all' => $comnum + $hidecom, 'twnum' => $twnum, 'hidecomnum' => $hidecom, 'tbnum' => $tbnum, 'tagnum' => $tagnum,//统计标签条数 );
2、修改后台信息页admin/views/index.php,大概在21行。
<li>有<b><?php echo $sta_cache['lognum'];?></b>篇日志,<b><?php echo $sta_cache['comnum_all'];?></b>条评论,<b><?php echo $sta_cache['twnum'];?></b>条碎语, <b><?php echo $sta_cache['tagnum'];?></b>个标签</li>
因为emlog5.1.0beta中,日志改为文章了,所以上面的代码也可以把日志改为文章。
by 2013-12-24
[BUG]:修复删除标签不更新标签数的问题,缓存不更新引起的。
3、修改后台admin/tag.php,大概在38行和51行:
$CACHE->updateCache(array('tags', 'logtags')); //修改为(2个地方是相同的) $CACHE->updateCache(array('tags', 'logtags','sta'));