服务器之家:专注于服务器技术及软件下载分享
分类导航

DEDECMS|帝国CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|苹果CMS|极致CMS|CMS系统|

服务器之家 - 建站程序 - PHPCMS - phpcms调用文章发布时间标签显示1970的解决方法

phpcms调用文章发布时间标签显示1970的解决方法

2019-10-11 13:16phpcms教程网 PHPCMS

在使用phpcms V9时,经常出现调用文章时间标签会显示1970年的问题,虽然不知道真正的原因,但我找到了解决方法。方法很简单,使用php strtotime() 函数即可

strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。

 

复制代码

代码如下:


{date('Y',strtotime($updatetime))} 大写Y显示 2013, 小写 y 则显示 13
{date('M-D',strtotime($updatetime))} 大写为英文月日, 小写为数字月日
{date('Y',time($updatetime))} 获取当前时间戳

 

   另外解释下phpcms标签里的updatetime和inputtime标签:

①updatetime是更新时间(也叫修改时间,就是后台的文章列表看到的时间);
②inputtime是第一次写文章时的发布时间(就是添加文章或者修改文章时缩略图下方的时间)。

   一般情况下,发布时间不会自动变动,但更新时间则会随着文章修改而变动。我们在前端页面写标签的时候,一般也都写发布时间,这样不会造成去年写的文章,修改后变成今年的文章。当然,如果写更新时间其实问题也不大。

如果还是不行可以参考下面的方法:

PHPCMS发布时间1970年01月01日的解决方法

在新闻内容页调用“{tag_内容页相关信息}”时在前台显示发布时间都是1970年01月01日,经过对标签模板的查看,没有发现问题,后再仔细查看标签设置,发现标签是“ 通过自定义SQL调用”的,而原来自定义SQL的语句是:

 

复制代码

代码如下:


SELECT DISTINCT c.contentid,c.title,c.style,c.url FROM `phpcmscom_content` c,`phpcmscom_content_tag` t WHERE c.contentid=t.contentid and c.`status`=99 AND t.`tag` IN(".get_sql_in($r[keywords]).") ORDER BY c.contentid DESC

 

并没有发布时间的执行函数,只需增加发布时间的函数即可显示真实的发布时间了,更改后的语句为:

 

复制代码

代码如下:


SELECT DISTINCT c.contentid,c.title,c.inputtime,c.style,c.url FROM `phpcmscom_content` c,`phpcmscom_content_tag` t WHERE c.contentid=t.contentid and c.`status`=99 AND t.`tag` IN(".get_sql_in($r[keywords]).") ORDER BY c.contentid DESC

 

注意添加下面的代码:

 

复制代码

代码如下:


c.inputtime,

延伸 · 阅读

精彩推荐