当前位置:首页 > 行业动态 > 正文

如何全面掌握DedeCMS的时间日期标签使用?

dedecms时间日期标签大全包括:发布时间、更新时间、创建时间等,可通过{dede:field name=’pubdate’/}等标签调用。

在DEDECMS中,时间日期标签的使用非常灵活,可以通过不同的函数和格式来展示各种样式的日期和时间,以下是一些常用的时间日期标签及其使用示例:

如何全面掌握DedeCMS的时间日期标签使用?  第1张

1、首页时间标签

月日格式[field:pubdate function='strftime("%m%d",@me)'/]

完整日期格式[field:pubdate function='strftime("%b %d, %Y",@me)'/]

2、列表页时间标签

完整时间戳[field:pubdate function="GetDateTimeMK(@me)"/]

仅日期[field:pubdate function="GetDateMK(@me)"/]

3、内容页时间标签

带函数的日期{dede:field name='pubdate' function='GetDateMk(@me)'/}

自定义日期格式{dede:field name='pubdate' function='strftime("%b %d, %Y",@me)'/}

4、特殊效果时间显示

24小时内的时间红色显示

 [field:pubdate runphp='yes']
     $a="<font color='#ff0000'>";
     $b="</font>";
     $c=strftime("%Y年%m月%d日 %H:%M:%S","@me");
     $ntime = time();
     $oneday = 3600 * 24;
     if(($ntime  @me)<$oneday) @me = $a.$c.$b;
     else @me =$c;
     [/field:pubdate]

自定义多少天以前

 [field:pubdate runphp='yes']
     $today = Floor(time()/(3600 * 24));
     $senday= Floor(@me/(3600 * 24));
     $updays = $today$senday;
     if($updays==0) @me = "quot;;
     else @me = $updays."天前";
     [/field:pubdate]

5、利用strftime()函数格式化时间

星期几的简写%a

月份的全称%B

标准的日期时间串%c

年份的后两位数字%y

十进制表示的每年的第几天%j

24小时制的小时%H

12小时制的小时%I

十进制表示的分钟数%M

十进制的秒数%S

时区名称%z

表格归纳

标签类型 调用代码 说明
首页时间标签 [field:pubdate function='strftime("%m%d",@me)'/] 月日格式
[field:pubdate function='strftime("%b %d, %Y",@me)'/] 完整日期格式
列表页时间标签 [field:pubdate function="GetDateTimeMK(@me)"/] 完整时间戳
[field:pubdate function="GetDateMK(@me)"/] 仅日期
内容页时间标签 {dede:field name='pubdate' function='GetDateMk(@me)'/} 带函数的日期
{dede:field name='pubdate' function='strftime("%b %d, %Y",@me)'/} 自定义日期格式
特殊效果时间显示 [field:pubdate runphp='yes']... [/field:pubdate] 24小时内的时间红色显示,自定义多少天以前
strftime()函数 %a,%B,%c,%y,%j,%H,%I,%M,%S,%z 各种时间格式参数

常见问题解答(FAQs)

1、如何在DEDECMS中显示文章发布时间为“刚刚发布”或者“几分钟前”?

解答:可以使用以下代码来实现:

 [field:pubdate runphp='yes']
     $now = time();
     $pubdate = @me;
     $minutes = round(abs($now  $pubdate) / 60);
     if ($minutes < 1) {
       @me = "刚刚发布";
     } else {
       @me = $minutes . "分钟前";
     }
     [/field:pubdate]

2、如何在DEDECMS中以红色字体显示24小时内的文章发布时间?

解答:可以使用以下代码来实现:

 [field:pubdate runphp='yes']
     $a="<font color='#ff0000'>";
     $b="</font>";
     $c=strftime("%Y年%m月%d日 %H:%M:%S","@me");
     $ntime = time();
     $oneday = 3600 * 24;
     if(($ntime  @me)<$oneday) @me = $a.$c.$b;
     else @me =$c;
     [/field:pubdate]
0