EMLOG网站信息统计代码(全)

方法一:官方缓存类统计代码。优点:加载速度快;缺点:可能信息更新不及时。

把以下代码添加到当前使用的主题模板文件中,如side.php文件:

代码语言:javascript
复制
<?php $sta_cache = Cache::getInstance()->readCache('sta'); /*必须添加*/ ?>
<ul>
 <li>文章总数:<?php echo $sta_cache['lognum']; ?> 篇</li>
 <li>评论总数:<?php echo $sta_cache['comnum_all']; ?> 条</li>
 <li>闲言碎语:<?php echo $sta_cache['twnum']; ?>条</li> 
 <li>网站运行:<?php echo floor((time()-strtotime(20160423))/86400); ?> 天</li> 
</ul>

附:$sta_cache[‘参数’]中的参数可选如下:

lognum游客可见日志总数

draftnum草稿,也就是隐藏文件数量

comnum未隐藏的评论数量

comnum_all所有评论数量

hidecomnum被隐藏的评论数量

twnum微语数量

checknum未审核的文章数量

方法二:自编函数,通过SQL语句查询相关数据。缺点:加载速度较缓存类慢;优点:实时显示 把下面的代码添加到主题的module.php文件中:

代码语言:javascript
复制
<?php
    //统计文章总数
    function count_log_all(){
        $db = MySql::getInstance();
        $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "blog WHERE type = 'blog'");
        return $data['total'];
    }
//置顶文章数
function count_log_top(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;blog WHERE  top = &#39;y&#39; or sortop = &#39;y&#39; AND type = &#39;blog&#39;&#34;);
    return $data[&#39;total&#39;];
}
//隐藏文章数
function count_log_hide(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;blog WHERE hide = &#39;y&#39; AND type = &#39;blog&#39;&#34;);
    return $data[&#39;total&#39;];
}

//未审核文章数
function count_log_check(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;blog WHERE checked = &#39;n&#39; AND type = &#39;blog&#39;&#34;);
    return $data[&#39;total&#39;];
}

//加密文章数
function count_log_pass(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;blog WHERE  password !=&#39;&#39; AND type = &#39;blog&#39;&#34;);
    return $data[&#39;total&#39;];
}

//统计页面总数
function count_page_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;blog WHERE type = &#39;page&#39;&#34;);
    return $data[&#39;total&#39;];
}

//统计评论总数
function count_com_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;comment&#34;);
    return $data[&#39;total&#39;];
}
//统计友链总数
function count_link_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;link&#34;);
    return $data[&#39;total&#39;];
}

//统计微语评论总数
function count_treply_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;reply&#34;);
    return $data[&#39;total&#39;];
}

//统计分类总数
function count_sort_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;sort&#34;);
    return $data[&#39;total&#39;];
}

//统计子分类数
function count_sort_mod(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;sort WHERE pid != 0&#34;);
    return $data[&#39;total&#39;];
}

//统计标签总数
function count_tag_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;tag&#34;);
    return $data[&#39;total&#39;];
}

//统计微语总数
function count_tw_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;twitter&#34;);
    return $data[&#39;total&#39;];
}

//统计用户总数
function count_user_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;user&#34;);
    return $data[&#39;total&#39;];
}

//统计管理员总数
function count_user_admin(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;user WHERE role = &#39;admin&#39;&#34;);
    return $data[&#39;total&#39;];
}

//统计作者总数
function count_user_writer(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;user WHERE role = &#39;writer&#39;&#34;);
    return $data[&#39;total&#39;];
}

//统计附件总数
function count_att_all(){
    $db = MySql::getInstance();
    $data = $db-&gt;once_fetch_array(&#34;SELECT COUNT(*) AS total FROM &#34; . DB_PREFIX . &#34;attachment&#34;);
    return $data[&#39;total&#39;];
}

//最后发表文章时间 
function last_post_log(){
    $db = MySql::getInstance();
    $sql = &#34;SELECT * FROM &#34; . DB_PREFIX . &#34;blog WHERE type=&#39;blog&#39; ORDER BY date DESC LIMIT 0,1&#34;;
    $res = $db-&gt;query($sql);
    $row = $db-&gt;fetch_array($res);
    $date = date(&#39;Y-n-j H:i&#39;,$row[&#39;date&#39;]);
    return $date;       
};

?>

调用代码:

代码语言:javascript
复制
<ul>
<li>文章总数:<?php echo count_log_all();?></li>
<li>置顶文章:<?php echo count_log_top();?></li>
<li>隐藏文章:<?php echo count_log_hide();?></li>
<li>待审文章:<?php echo count_log_check();?></li>
<li>加密文章:<?php echo count_log_pass();?></li>
<li>页面总数:<?php echo count_page_all();?></li>
<li>评论总数:<?php echo count_com_all();?></li>
<li>友链总数:<?php echo count_link_all();?></li>
<li>微语评论:<?php echo count_treply_all();?></li>
<li>分类总数:<?php echo count_sort_all();?></li>
<li>子分类数:<?php echo count_sort_mod();?></li>
<li>标签总数:<?php echo count_tag_all();?></li>
<li>微语总数:<?php echo count_tw_all();?></li>
<li>用户总数:<?php echo count_user_all();?></li>
<li>管理员数:<?php echo count_user_admin();?></li>
<li>作者总数:<?php echo count_user_writer();?></li>
<li>附件总数:<?php echo count_att_all();?></li>
<li>最后更新:<?php echo last_post_log();?></li>
</ul>