您当前的位置: 主页 > 优化教程
织梦的文章发布时间调用格式一般分为一下这些:
 
[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) @me="1个月前";
elseif($updays >= 60 && $updays < 90) @me="2个月前";
elseif($updays >= 90 && $updays < 120) @me="3个月前";
elseif($updays >= 120 && $updays < 150) @me="4个月前";
elseif($updays >= 150 && $updays < 180) @me="5个月前";
elseif($updays >= 180 && $updays < 210) @me="6个月前";
elseif($updays >= 210 && $updays < 240) @me="7个月前";
elseif($updays >= 240 && $updays < 270) @me="8个月前";
elseif($updays >= 270 && $updays < 300) @me="9个月前";
elseif($updays > 300 && $updays < 330) @me="10个月前";
elseif($updays > 330 && $updays < 360) @me="11个月前";
elseif($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) {
              $str = $updays.'天前 ';
      }
      elseif ($updays >= 31&& $updays < 365) {
              $m = floor($updays / 31);
              $str = $m.'月前 ';
      }
          elseif ($updays >= 31&& $updays < 365) {
              $y = floor($updays / (31* 365));
              $str = $y.'年前 ';
      }
      else {
              $str = $rtime;
      }
      return $str;
                                                    }
 
如果要显示几分钟和几小时,则自行加入判断函数
 
调用方法
 
列表页:[field:pubdate function="tranTime(@me)" /]
 
内容页:{dede:field.pubdate function="tranTime(@me)"/}
 
以上两种方法都可以实现调用,第一种方法是直接把php语法写入模版中,会显得文件比较冗余,建议使用第二种自定函数的方式,简单明了。
 

关键词:织梦,显示,发布,时间,为,多少,前,的,实现,    标签:
    更多资讯请收藏关注 网站模板(www.1yc.cn)

dedecms不能正常删除栏目及文件夹的解决方案20180109新版的DedeCMS的WEB环境用的PHP版本有一定限... 2021-08-09
dedecms搜索结果页实现按频道模型显示不同结果模板的方法这篇文章主要为大家介绍了dedecms搜索结果页实现按频道模型显示不同... 2021-07-27
DedeCMS网站更换域名后图片路径批量修改因为织梦上传图片用的是绝对地址,如果域名更换后,之前发布的文章的图片U... 2021-08-09
dedecms 获取当前栏目ID以及调用当前栏目的字段获取dedecms当前栏目的ID,标签为: {dede:type}[f... 2021-07-30
织梦文章列表页怎么样让文章标题隔行换色?在首页或者列表页想要有一个特效颜色,很多人都会选择隔行换色的方法,想要... 2021-07-27
织梦DEDECMS模板中内容页分页数目太多时自动隐藏的方法在dede程序的文章或图集模型,内容页分页过多,假如分页80页,那么d... 2021-07-22
DedeCMS在PHP7.0以上环境下文章页空白的解决方法最近在捣腾阿里云服务器,发现把php版本升级到7.0之后,其他地方都是... 2021-07-22
DedeCMS让channelartlist支持currentstyle属性dedecms默认模板的channelartlist是不支持curre... 2021-08-14
织梦tag标签列表按发布时间排序的方法搜索引擎对TAG十分重视,网站tag页面被收录,也能带来流量,解决织梦... 2021-07-22
DedeCMS文章编辑不更新时间1970年1月1日在修改文章或者后期优化的时候,织梦dedecms5.7版本存在一个问题... 2021-07-30
DEDECMS显示英文日期时间的方法本文实例讲述了DEDECMS显示英文日期时间的方法。分享给大家供大家参... 2021-07-30
织梦dedecms首页调用单页栏目内容和文章内容的方法用dedecms做企业站时,通常在首页会调用公司简介、联系我们之类的单... 2021-07-27
织梦自定义表单添加验证码织梦自定义表单是非常实用的工具,比如在线留言、提交订单等,但是如何加入... 2021-07-27
织梦DedeCMS5.7图集加水印解决方法设置:系统系统基本参数附件设置图集是否使用水印(小图也会受影响),选择... 2021-07-22

线
咨询热线:
135-0038-3336
在线客服:
点击这里给我发消息
微信交流:
公司官网: www.1yc.cn