dedecms 最新文章加 new 标志

互联网 - 02-20

如何在 DEDE中当天发布的内容加上new标志呢?

[field:senddate runphp='yes'] 
$ntime = time();
$oneday = 3600 * 24;
if(($ntime - @me)<$oneday) @me = "<font color='red'>(new)</font>";
else @me = "";
[/field:senddate]
 
 
给24小时内的文章加上NEW图片等样式,更新时间特殊样式(列表页)
更新时间24小时显特殊颜色,24小时内的显示时:分:秒 ;24小时以上显示年-月-日
[[field:pubdate runphp="yes"] if((time()-@me)<(60*60*24)){@me=' <font color="#ff6600">'.strftime("%H:%M:%S",@me).'</FONT>';}
               else {@me=strftime("%y-%m-%d",@me);}                
  [/field:pubdate]]
 
 
给近三天(或当天)发布的文章显示红色日期或加上new字或new小图片等。

都是围绕pubdate做文章,写扩展的。

第2、3要注意的问题是:如:<img src='new.gif' />中不能用双引号,否则不行。

如果要给当天的加,把 3600 * 24 * 3 改为 3600 * 24  即可。


1、==========红色的日期========

[field:pubdate runphp='yes']
$a="<font color=red>".strftime('%m-%d',@me)."</font>";
$b=strftime('%m-%d',@me);
$ntime = time();
$day3 = 3600 * 24 * 3;
if(($ntime - @me) < $day3) @me = $a;
else @me =$b;
[/field:pubdate]


2、==========红色的(new)========

[field:pubdate runphp='yes']
$aa=strftime('%m-%d',@me);
$ntime = time();
$tagtime = @me;
$day3 = 3600 * 24 * 3;
if($tagtime > $ntime-$day3) @me = "<font color='red'>(new)</font>";
else @me = $aa;
[/field:pubdate]


3、==========加new.gif小图片========

[field:pubdate runphp='yes']
$aa=strftime('%m-%d',@me);
$ntime = time();
$tagtime = @me;
$day3 = 3600 * 24 * 3;
if($tagtime > $ntime-$day3) @me = "<img src='new.gif' />".$aa;
else @me = $aa;
[/field:pubdate]
 

下面来引用一段实际运用的代码看看

<div class="new_l">
 <div class="new_l1">最新文章<span style="font-size:12px; color:#5A5A5A;font-weight:normal;">&nbsp;&nbsp;{dede:sql sql="SELECT count( ID ) AS c FROM dede_archives WHERE pubdate > UNIX_TIMESTAMP( CURDATE( ) ) "}今日更新:<font color="red">[field:c /]</font>篇{/dede:sql} </span></div>
{dede:arclist subday='30' titlelen='60' row='30' typeid='top' orderby='pubdate'}         
<li><span>[field:pubdate runphp="yes"] if((time()-@me)<(60*24)){@me='<font color="#ff6600">'.strftime("%H:%M:%S",@me).'</font>';}
               else {@me=strftime("%y-%m-%d",@me);}               
  [/field:pubdate] </span> [<a href="[field:typeurl/]">[field:typename/]</a>] <a href="[field:arcurl/]">[field:title/]</a>[field:senddate runphp='yes']
$ntime = time();
$oneday = 60 * 24;
if(($ntime - @me)<$oneday) @me = "<img src='/img/newarc_ico.gif' />";
else @me = "";
[/field:senddate] </li>
{/dede:arclist}
</div>