在前面已经介绍了WordPress版本的《纯代码实现按年、月、周评论排行的读者墙》和《PHP版本的Zblog年月周读者墙插件》,但是有些博友是使用Zblog建站的,导致有机会成为本站合作博客但没有办法推出周评论排行榜的读者墙而被取消享受上首页推荐一个月的福利,为此,本站特意推出Zblog版本的年月周排行榜的读者墙,今天就分享给大家,希望大家有空的时候折腾一下,从而推进按年、月、周评论排行的读者墙。
PHP版本的Zblog年、月、周排行榜读者墙的实现步骤如下:
1、把以下代码添加到所使用主题的include.php文件最后一个?>前面(如果没有include.php,就自己新建一个,记得加上<?php和?>):
- function YMWreaderwall($num,$adminemail){
- global $zbp;
- if($num){
- $i = $num;
- }else{
- $i=6;
- }
- if($adminemail){
- $bozhuemail = $adminemail;
- }else{
- $bozhuemail=’22265…[email protected]’;
- }
- $dy =date(‘Y’);
- $dm =date(‘m’);
- $dw =strftime(“%U”);
- $sqly = $zbp->db->sql->Select(
- $zbp->table[‘Comment’],
- array(‘COUNT(comm_ID) AS cnt, comm_Name, comm_HomePage , comm_Email’),
- array(
- array(‘=’, ‘year(from_unixtime(comm_PostTime))’, $dy),
- array(‘<>’, ‘comm_Email’, $bozhuemail),
- array(‘=’, ‘comm_AuthorID’, 0),
- array(‘CUSTOM’, ‘1=1 GROUP BY comm_Email’)
- ),
- array(‘cnt’ => ‘DESC’),
- $i,
- null
- );
- $arrayy=$zbp->db->Query($sqly);
- $sy=“本年评论排行榜 TOP$i<ul class=’readers-list’>”;
- $sy .=“\r\n”;
- foreach ($arrayy as $commenty) {
- $sy .= ‘<li><a href=“‘.$commenty[‘comm_HomePage’] . ‘” rel=“external nofollow” target=“_blank”><img src=“http://cn.gravatar.com/avatar/’ .md5(strtolower($commenty[‘comm_Email’])).’ &r=X&s=80” alt=“avatar” class=“avatar avatar-36 photo” height=“36” width=“36” /><em>’.$commenty[‘comm_Name’] .'</em><strong>+’.$commenty[‘cnt’].'</strong></br>’.$commenty[‘comm_HomePage’] . ‘</a></li>’;
- $sy .=“\r\n”;
- }
- $sy .=“</ul>”;
- $sy .=“\r\n”;
- echo $sy;
- $sqlm = $zbp->db->sql->Select(
- $zbp->table[‘Comment’],
- array(‘COUNT(comm_ID) AS cnt, comm_Name, comm_HomePage , comm_Email’),
- array(
- array(‘=’, ‘year(from_unixtime(comm_PostTime))’, $dy),
- array(‘=’, ‘month(from_unixtime(comm_PostTime))’, $dm),
- array(‘<>’, ‘comm_Email’, $bozhuemail),
- array(‘=’, ‘comm_AuthorID’, 0),
- array(‘CUSTOM’, ‘1=1 GROUP BY comm_Email’)
- ),
- array(‘cnt’ => ‘DESC’),
- $i,
- null
- );
- $arraym=$zbp->db->Query($sqlm);
- $sm=“本月评论排行榜 TOP$i<ul class=’readers-list’>”;
- $sm .=“\r\n”;
- foreach ($arraym as $commentm) {
- $sm .= ‘<li><a href=“‘.$commentm[‘comm_HomePage’] . ‘” rel=“external nofollow” target=“_blank”><img src=“http://cn.gravatar.com/avatar/’ .md5(strtolower($commentm[‘comm_Email’])).’ &r=X&s=80” alt=“avatar” class=“avatar avatar-36 photo” height=“36” width=“36” /><em>’.$commentm[‘comm_Name’] .'</em><strong>+’.$commentm[‘cnt’].'</strong></br>’.$commentm[‘comm_HomePage’] . ‘</a></li>’;
- $sm .=“\r\n”;
- }
- $sm .=“</ul>”;
- $sm .=“\r\n”;
- echo $sm;
- $sqlw = $zbp->db->sql->Select(
- $zbp->table[‘Comment’],
- array(‘COUNT(comm_ID) AS cnt, comm_Name, comm_HomePage , comm_Email’),
- array(
- array(‘=’, ‘year(from_unixtime(comm_PostTime))’, $dy),
- array(‘=’, ‘week(from_unixtime(comm_PostTime))’, $dw),
- array(‘<>’, ‘comm_Email’, $bozhuemail),
- array(‘=’, ‘comm_AuthorID’, 0),
- array(‘CUSTOM’, ‘1=1 GROUP BY comm_Email’)
- ),
- array(‘cnt’ => ‘DESC’),
- $i,
- null
- );
- $arrayw=$zbp->db->Query($sqlw);
- $sw=“本周评论排行榜 TOP$i<ul class=’readers-list’>”;
- $sw .=“\r\n”;
- foreach ($arrayw as $commentw) {
- $sw .= ‘<li><a href=“‘.$commentw[‘comm_HomePage’] . ‘” rel=“external nofollow” target=“_blank”><img src=“http://cn.gravatar.com/avatar/’ .md5(strtolower($commentw[‘comm_Email’])).’ &r=X&s=80” alt=“avatar” class=“avatar avatar-36 photo” height=“36” width=“36” /><em>’.$commentw[‘comm_Name’] .'</em><strong>+’.$commentw[‘cnt’].'</strong></br>’.$commentw[‘comm_HomePage’] . ‘</a></li>’;
- $sw .=“\r\n”;
- }
- $sw .=“</ul>”;
- $sw .=“\r\n”;
- echo $sw;
- }
2、把以下代码添加到所使用主题的style文件夹内的default.css文件中:
- /* 读者墙 */
- #dzq h3{margin:10px 0 5px;}
- #dzq ul{margin:0px 0px 1px 24px;}
- #dzq .readers-list{font-size:12px;line-height:18px;text-align:left;_zoom:1;overflow:hidden;text-overflow:ellipsis;whitewhite-space:nowrap;}
- #dzq .readers-list li{width:200px;float:left;*margin-right:-1px;margin:0 5px 0 0;}
- #dzq .readers-list a,#dzq .readers-list a:hover strong{background-color:#f2f2f2;background-image:-webkit-linear-gradient(#f8f8f8,#f2f2f2);background-image:-moz-linear-gradient(#f8f8f8,#f2f2f2);background-image:linear-gradient(#f8f8f8,#f2f2f2)}
- #dzq .readers-list a{position:relative;display:block;height:36px;margin:4px;padding:4px 4px 4px 44px;color:#999;overflow:hidden;border:#ccc 1px solid;border-radius:2px;box-shadow:#eee 0 0 2px}
- #dzq .readers-list img,#dzq .readers-list em,#dzq .readers-list strong{-webkit-transition:all .2s ease-out;-moz-transition:all .2s ease-out;transition:all .2s ease-out}
- #dzq .readers-list img{width:36px;height:36px;float:left;margin:0 8px 0 –40px;border-radius:2px}
- #dzq .readers-list em{color:#666;font-style:normal;margin-right:10px}
- #dzq .readers-list strong{color:#ddd;width:40px;text-align:rightright;position:absolute;rightright:6px;top:4px;font:bold 14px/16px microsoft yahei}
- #dzq .readers-list a:hover{border-color:#BA4C32;box-shadow:#ccc 0 0 2px;background-color:#fff;background-image:none}
- #dzq .readers-list a:hover img{opacity:.6;margin-left:0}
- #dzq .readers-list a:hover em{color:#BA4C32;font:bold 14px/36px microsoft yahei}
- #dzq .readers-list a:hover strong{color:#BA4C32;rightright:150px;top:0;text-align:center;border-right:#ccc 1px solid;height:44px;line-height:40px}
3、下载本站的YMWreaderwall.php文件模板,修改YMWreaderwall.php文件模板代码中的排行榜现实数量及博主的邮箱地址,如:{YMWreaderwall(6,’22265…[email protected]’)},其中6表示显示6个读者,后面的邮箱是博主自己的邮箱,排行榜将会排除博主自己的上榜。
4、把修改好的YMWreaderwall.php文件模板,存放到所使用主题的template文件夹内。登录后台后,可以直接新建一个页面或直接编辑留言本页面, 在模板中选择我们这个YMWreaderwall模板,然后提交更新即可。
YMWreaderwall.php文件模板及本站所使用的代码和使用说明下载地址(提取码:0cbe):
此时,刷新我们的留言本看看,是否已经实现了年、月、周排行榜的读者墙???大家赶紧试一试吧!