 
        对于在不同的栏目区域让超连接显示不同的颜色虽然已经实现,但对于如何让首页标签调用的最新发表的文章(24小时之内)和热门文章(根据后台设置浏览量达到多少的文章为热门文章)标题显示不同的颜色,今天终于终于实现了,现在和朋友们一起分享。
要达到这个效果,只需要修改两处:
    1、修改label_function.php(路径:根目录/inc/label_function.php); 
    2、修改后台标签中的模板代码。
    具体步骤: 
一、修改label_function.php(路径:根目录/inc/label_function.php) 
    1、用记事本打开label_function.php文件,查找下面的代码: 
 
function Get_Title($format){ 
global $db,$webdb,$pre; 
//此处屏障报错,主要是处理不同版本之间存在的一些差异性问题 
$query=$db->query("$format[sql]",'','0'); 
if(!$query){ 
  return ; 
} 
while($rs=$db->fetch_array($query)){ 
  $rs[i]=++$i; 
  if($format[wninfo]&&$rs[mid]){ 
  $_rss=$db->get_one("SELECT * FROM {$pre}{$format[wninfo]}content_{$rs[mid]} WHERE id='$rs[id]' LIMIT 1"); 
  $_rss && $rs=$rs+$_rss; 
  } 
  $rs[full_time]=$rs[posttime]; 
  $rs[full_title]=$rs[title]; 
  //内容 
  $rs[content]=preg_replace('/<([^>]*)>/is',"",$rs[content]); //把HTML代码过滤掉 
  $rs[content]=get_word($rs[content],$format[content_num]); 
  //标题 
  $rs[title]=get_word($rs[title],$format[titlenum],$format[titleflood]); 
 
  2、在上述的代码下面增加如下代码:
                if ($rs[posttime]>=time()-86400&&$webdb[hotArticleNum]&&$rs['hits']<=$webdb[hotArticleNum]){ 
                $rs[titlecolor]="<font color=#EF5100>"; 
                $rs[titlecolorn]="</font>"; 
                $rs[newarticle]="<img src=$webdb[www_url]/imagess/default/new_ico.gif>"; 
                } 
                elseif ($rs[posttime]>=time()-86400&&$webdb[hotArticleNum]&&$rs['hits']>$webdb[hotArticleNum]){ 
                $rs[titlecolor]="<font color=#EF5100>"; 
                $rs[titlecolorn]="</font>"; 
                $rs[newarticle]="<img src=$webdb[www_url]/imagess/default/new_ico.gif>"; 
                } 
                elseif($rs[posttime]<time()-86400&&$webdb[hotArticleNum]&&$rs['hits']>=$webdb[hotArticleNum]){ 
                $rs[titlecolor]="<font color=#639600>"; 
                $rs[titlecolorn]="</font>"; 
                $rs[newarticle]=""; 
                $rs[hotarticle]="<img src=$webdb[www_url]/imagess/default/hot_icon.gif 
                } 
                else{ 
                $rs[titlecolor]=""; 
                $rs[titlecolorn]=""; 
                $rs[newarticle]=""; 
                $rs[hotarticle]=""; 
                }
    增加的部分为判断条件: 
    1、如果发表文章的时间在24小时之内,浏览次数小于或等于后台设置的热门文章浏览量,则显示最新文章标题颜色,并有new图标显示; 
    2、如果发表文章的时间在24小时之内,浏览次数大于后台设置的热门文章浏览量,则仍然显示最新文章标题颜色,并有new图标显示; 
    3、如果发表文章的时间超过了24小时,浏览次数大于或等于后台设置的热门文章浏览量,则显示热门文章标题颜色,并有热门文章图标显示,new图标消失; 
    4、以上条件外的,则一律按照系统默认,new图标和热门文章图标将消失,颜色也为默认颜色。
二、修改后台标签模板代码 
    进入后台→系统基本操作→更新首页标签,在需要实现这样效果的标签蓝色区域点击,修改标签模板代码。只需要将颜色变量$titlecolor、$titlecolorn和最新文章图标变量$newarticle、热门文章图标变量$hotarticle插入到相应区域即可,如图所示:

这是我的标签模板代码,供朋友们参考:(时间靠右显示,这样比较美观一点,和效果演示的图片一样)
<div><div style="float:left">·<A HREF="$url" target='_blank'>{$titlecolor}$title{$titlecolorn}</a>{$newarticle}{$hotarticle}</div><div style="float:right">({$time_y}-{$time_m}-{$time_d})</div></div><br>
 
三、需要注意的地方: 
    检查一下后台关于最新文章和热门文章那里的设置,规定多少小时内发布的文章时间要为24小时方能正常显示此功能。具体方法:
    后台→文章模块管理→模块设置,在右边的页面中,将“上面如果设置显示图标,那么最近几小时内发表的文章归为最新文章,即有图标显示”后面的时间改为24小时。为了能及时看到热门文章的效果,也可以将“上面如果设置显示图标,那么浏览多少次以上的文章归为热门文章,即有图标显示”后面的浏览次数改低一点,如10次。 
五、效果演示:

 20080626补充说明: 
    因为很多朋友可能习惯用网页编辑软件打开php文件,然后再直接复制论坛代码,容易导致一些错误,故提供文本文档,只要直接txt文档里的代码就不会出错.不过还是建议朋友用“记事本”来打开php文件。
网友评论