找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 156|回复: 0

[cms教程] 织梦显示发布时间为多少时间前的实现方法

[复制链接]

该用户从未签到

发表于 2021-3-27 11:25:20 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
织梦的文章发布时间调用格式一般分为一下这些:
         
        [field:pubdate function="MyDate('Y-m-d',@me)"/,
        2013-12-17
        [field:pubdate function=MyDate('m-d',@me)/,
        12-17
        [field:pubdate function=MyDate('y-m-d',@me)/,
        13-12-17
        [field:pubdate function='strftime("%y-%m-%d %H:%M:%S",@me)'/,
        13-12-17 10:35:21
        [field:pubdate function='strftime("%m-%d %H:%M:%S",@me)'/,
        12-17 10:35:21
        [field:pubdate function='strftime("%y年%m月%d日",@me)'/,
        13年12月17日
        [field:pubdate function='strftime("%Y年%m月%d日 %H点%M分%S秒",@me)'/,
        13年12月17日 12点12分30秒
         
        有的时候,我们想做到不直接显示具体时间,而是以几天前、几月前这样的时间间隔方式来显示, 更利于让访客直观地看到文章的发布时段,以上的调用方法则不适用了。
         
        教大家如何实现显示发布时间为多少时间前,主要有两种方法。
         
        一、模板直接写PHP语句
         
       
               
                       
                               
                                       
[field:pubdate runphp='yes',
$today = Floor(time()/(3600 * 24));
$senday= Floor(@me/(3600 * 24));
$updays = $today-$senday;
if($updays >= 30 && $updays = 60 && $updays = 90 && $updays = 120 && $updays = 150 && $updays = 180 && $updays = 210 && $updays = 240 && $updays = 270 && $updays  300 && $updays  330 && $updays = 360) @me="一年前";
elseif($updays==0) @me = "今日";
else @me = $updays."天前";
[/field:pubdate,
                               
                       
               
       

         
        二、自定义函数
         
        在include/extend.func.php文件中加入以下代码:
         
       
               
                       
                               
                                       
//文章发布多少时间前
      function tranTime($time) {
      $today = Floor(time()/(3600 * 24));
      $senday= Floor($time/(3600 * 24));
      $updays = $today-$senday;
      if($updays==0)
      $str = '今天';
      elseif ($updays >=1 && $updays = 31&& $updays = 31&& $updays
                               
                       
               
       

         
        如果要显示几分钟和几小时,则自行加入判断函数
         
        调用方法
         
        列表页:[field:pubdate function="tranTime(@me)" /,
         
        内容页:{dede:field.pubdate function="tranTime(@me)"/}
         
        以上两种方法都可以实现调用,第一种方法是直接把php语法写入模版中,会显得文件比较冗余,建议使用第二种自定函数的方式,简单明了。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-10-9 19:23

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表