很多时候想做个前台文章整站统计数量。这里简单的分享一个调用方法,后期看看是否加入到系统中去!
首先先打开
\application\common.php
文件。
找到 :
if (!function_exists('GetTotalArc'))
{
/**
* 统计栏目文章数
*/
function GetTotalArc($typeid = 0)
{
if (empty($typeid)) {
return 0;
} else {
$cache_key = md5("common-GetTotalArc-{$typeid}");
$count = cache($cache_key);
if (empty($count)) {
if(version_compare(getCmsVersion(),'v1.6.6','>')) {
$count = \think\Db::name('arctype')->where(['id'=>$typeid])->value('total_arc');
cache($cache_key, $count, null, 'arctype');
} else {
$row = model('Arctype')->getHasChildren($typeid);
if (empty($row)) return 0;
$typeids = array_keys($row);
$allow_release_channel = config('global.allow_release_channel');
$condition = [
'typeid' => ['IN', $typeids],
'channel' => ['IN', $allow_release_channel],
'arcrank' => ['gt', -1],
'status' => 1,
'is_del' => 0,
];
/*定时文档显示插件*/
if (is_dir('./weapp/TimingTask/')) {
$TimingTaskRow = model('Weapp')->getWeappList('TimingTask');
if (!empty($TimingTaskRow['status']) && 1 == $TimingTaskRow['status']) {
$condition['add_time'] = ['elt', getTime()]; // 只显当天或之前的文档
}
}
/*end*/
$count = \think\Db::name('archives')->where($condition)->count('aid');
cache($cache_key, $count, null, 'archives');
}
}
return intval($count);
}
}
}
4599行下面 添加以下代码:
if (!function_exists('GetArcdocument'))
{
/**
* 统计所有文章数
*/
function GetArcdocument($aid = 0)
{
$arcdoc = Db::name('archives');
$total = $arcdoc->count();
echo $total;
}
}
--------------------------------------------------------------------------------------------------------------------------
$carcdoc['add_time'] = ['elt', getTime()];
$total = \think\Db::name('archives')->where($arcdoc)->count('aid');
上面的红色部分依次按条件是可以修改为这段部分,比如以今日添加的时间为准,今天和过去的所有帖子。
这个是可以条件自己修改 具体按自己能力 赖的话 就上面的红色部分 反正都是全部文章数量
前台调用标签为:{$eyou.field.total|GetArcdocument=###}
效果就是 实际的文档数量。
教程就写到这里 有需要的自己添加吧!