许多使用Dedecms CMS程序的博客或内容管理系统(CMS)站长,都希望实现文章在发布后的一定时间内自动置顶或者以特殊样式显示。本文将分享一个简单实用的小技巧——如何让24小时内发布的文章标题自动变为红色。
首先,我们需要找到并打开模板文件templets/default/index.htm
。假设以下代码片段是用来调用网站最新发表的文章列表:
{dede:arclist titlelen='60' noflag='h' row='13'}
[field:pubdate function="MyDate('m-d',@me)"/][field:title/]
{/dede:arclist}
接下来,我们对这段代码进行修改,使其能够实现24小时内发布的文章标题变为红色的效果。以下是修改后的代码:
{dede:arclist titlelen='60' noflag='h' row='13'}
[field:pubdate runphp='yes']
$a="";
$d="";
$b="";
$c=strftime("%m-%d","@me");
$ntime = time();
$oneday = 3600 * 24;
if(($ntime - @me)<$oneday) @me = $a.$c.$b;
else @me = $d.$c.$b;
[/field:pubdate] [field:title/]
{/dede:arclist}
通过以上修改,系统会自动判断文章发布时间与当前时间的差值。如果文章是在24小时内发布的,其标题将会以红色显示;否则,标题将以默认颜色显示。
如果你使用的是Dedecms默认模板,并且首页调用的是类似以下代码:
[field:pubdate function="MyDate('m-d',@me)"/]
那么只需要将其替换为以下代码即可:
[field:pubdate runphp='yes']
$a="";
$d="";
$b="";
$c=strftime("%m-%d","@me");
$ntime = time();
$oneday = 3600 * 24;
if(($ntime - @me)<$oneday) @me = $a.$c.$b;
else @me = $d.$c.$b;
[/field:pubdate]
完成上述操作后,保存文件并刷新页面,你将看到新发布的文章标题自动变红的效果。这个小技巧不仅提升了用户体验,还能有效吸引访客关注最新内容。
总结来说,通过简单的PHP逻辑判断和HTML标签嵌套,我们可以轻松实现Dedecms中文章标题的动态样式变化。希望这篇文章对你有所帮助!