欢迎访问融科网络!我们专注于郑州网站建设郑州网站制作郑州网站设计郑州做网站等相关服务!
营销之道 干货分享
了解企业新动态,分享前沿的营销推广干货,成长路上,我们携手同行

编程代码

织梦显示发布时间为多少时间前的实现办法

标签: 作者:融科网络 | 点击:
21

Oct
2019

导语
织梦的新闻发布时间调用格式一般分为一下这些: [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 functi
 

澳门体育登录织梦的新闻发布时间调用格式一般分为一下这些:

[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; }  

如果要显示几分钟和几小时,则自行加入判断函数

elseif ($updays >0 && $updays < 1 ) { $h = floor($updays * 24); $str = $h.'小时前 '; }  

调用办法

澳门体育登录栏目页:[field:pubdate function="tranTime(@me)" /]

内容详细页:{dede:field.pubdate function="tranTime(@me)"/}

以上两种办法都可以实现调用,第一种办法是直接把php语法写入模版中,会显得文件比较冗余,建议使用第二种自定函数的方式,简单明了。

郑州融科网络专注于企业网站建设、网站制作、高端网站设计,郑州荥阳、上街做网站就找融科网络!
本文章网址:http://fudashu.com/code/10977.html。转载请保留出处,谢谢合作!

全网(营销型+响应式)专业定制

澳门体育登录快速搭建高询盘+营销独立站

微信扫一扫 添加微信

澳门体育登录推荐分享,免费SEO诊断

澳门体育登录扫码加好友,即送价值1880元的SEO优化教程

(网站没排名,轻松让关键词上澳门体育登录!专注H5企业建站+网站优化推广)

上一篇:织梦一个完整的留言簿开发源码

下一篇:织梦会员前台无法上传图片的解决方案

  • 网站建设案例
建站流程
  • 网站需
    求分析
  • 网站策
    划方案
  • 页面风
    格设计
  • 程序设
    计研发
  • 资料录
    入优化
  • 确认交
    付使用
  • 后续跟
    踪服务
  • 151-3895-5886
  • 品牌网站建设定制
  • 营销型网站建设定制
十分彩-欢迎您 十分彩平台 -【专业购彩平台】 十分彩注册---澳门体育登录_欢迎您 十分彩_官网 十分彩-澳门体育登录 十分彩|官方唯一指定!