代理加盟 2020全新代理计划 赚钱+省钱双管齐下,独立平台,丰厚利润!

您现在的位置: 秀站网 > 织梦大学 > 使用教程 >

DedeCMS发布时间显示多少天月年前

来源:本站原创 发布时间:2019-03-30 00:00:00热度:我要评论(0

免费下载,无需注册无需充值

       DedeCMS时间格式比较多,下面是使用比较多的几种格式,如果希望实现文章发布不是具体的时间,而是如本秀站网秀站网博客的:几分钟、几天、几周、几个月、几年前之类的,有两种方法。

常见时间格式

[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)'/]

第一种 模板直接写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]

第二种 DedeCMS自定义函数

       把下面的代码放在include/extend.func.php最下面即可

/**
*文章发布多少时间前
*by SEO秀站网
*/
function tranTime($time) {
    $today = Floor(time()/3600 * 24);
    $senday = Floor($time()/3600 * 24);
    $updays = $today - $senday;
    if ($time < 60) {
        $min = floor($time / 60);
        $str = $min.'分钟前';
    }
    elseif ($time < 3600 * 24) {
        $h = floor($time / 3600);
        $str = $h.'小时前 '.$htime;
    }
    elseif ($time >= 3600 * 24 && $time < 3600 * 24 * 30 * 365) {
        $m = floor($time / (3600 * 24));
        $str = $m.'个月前 ';
    }

    elseif ($time >= 3600 * 24 * 30 * 365) {
        $y = floor($time / (3600 * 24 * 365));
        $str = $y.'年前 ';
    }
    else {
        $str = $rtime;
    }
    return $str;
 }

时间调用方法

列表页:[field:pubdate function="tranTime(@me)" /]
内容页:{dede:field.pubdate function="tranTime(@me)"/}

转载请注明来源网址:https://www.xiuzhanwang.com/dedecms_jq/1379.html

    发表评论

    评论列表(条)