$cfg_editor_lasttime = 'ymd H:i';
,将其修改为$cfg_editor_lasttime = 'ymd H:i:s';
,保存并重新生成文章。 在DedeCMS中,有时候用户会遇到编辑文章后时间不更新的问题,甚至出现1970年1月1日的情况,这种情况通常是由于系统设置或代码逻辑问题引起的,本文将详细解析如何解决这个问题,并提供一些常见问题的解答。
修改方法
方法一:检查服务器时区设置
确保服务器的时区设置正确,可以通过以下步骤来检查和修改时区设置:
1、登录服务器:通过SSH或者远程桌面连接到服务器。
2、查看时区:在命令行输入date
查看当前时区。
3、修改时区:如果发现时区不正确,可以通过编辑/etc/profile
文件(对于Linux系统)来修改时区。
“`bash
export TZ=’Asia/Shanghai’;
“`
4、重启服务器:保存修改并重启服务器以使更改生效。
方法二:修改DedeCMS配置文件
如果服务器时区设置正确,但问题依然存在,可以尝试修改DedeCMS的配置文件/data/config.cache.inc.php
。
1、找到配置文件:通常该文件位于DedeCMS安装目录的data
文件夹中。
2、编辑配置文件:使用文本编辑器打开config.cache.inc.php
文件。
3、添加时区设置:在文件中添加以下代码:
“`php
define(‘DEDE_TIME’, time());
“`
4、保存并关闭文件:保存对配置文件的修改并关闭编辑器。
5、刷新页面缓存:进入DedeCMS后台管理界面,点击“系统” > “清除缓存”。
方法三:修改数据库字段
如果以上方法均无效,可能是数据库中的字段设置有问题,需要直接修改数据库。
1、登录数据库:使用数据库管理工具(如phpMyAdmin、MySQL Workbench等)登录到数据库。
2、找到表结构:找到存储文章信息的表,通常是dede_archives
。
3、检查字段类型:检查pubdate
和lastpost
字段的类型,确保它们是日期时间类型(如datetime
)。
4、修改字段类型:如果发现字段类型不正确,可以执行以下SQL语句进行修改:
“`sql
ALTER TABLE dede_archives MODIFY COLUMN pubdate DATETIME;
ALTER TABLE dede_archives MODIFY COLUMN lastpost DATETIME;
“`
5、更新数据:如果字段类型已经正确,但时间仍然显示为1970年1月1日,可以尝试更新这些字段的数据:
“`sql
UPDATE dede_archives SET pubdate = NOW() WHERE pubdate = ‘19700101 08:00:00’;
UPDATE dede_archives SET lastpost = NOW() WHERE lastpost = ‘19700101 08:00:00’;
“`
常见问题解答(FAQs)
问题一:为什么编辑文章后时间会变成1970年1月1日?
回答:编辑文章后时间变成1970年1月1日通常是由于以下几个原因:
1、服务器时区设置错误:服务器的时区设置不正确会导致时间计算出错。
2、DedeCMS配置问题:DedeCMS的配置文件中缺少时区设置或设置错误。
3、数据库字段类型错误:数据库中存储时间的字段类型不正确,导致时间无法正确存储和读取。
问题二:如何避免编辑文章后时间不更新的问题?
回答:为了避免编辑文章后时间不更新的问题,可以采取以下措施:
1、定期检查服务器时区设置:确保服务器的时区设置与实际需求一致。
2、正确配置DedeCMS:按照DedeCMS的官方文档正确配置系统参数和时区设置。
3、定期备份数据库:定期备份数据库以防止数据丢失或损坏。
4、使用最新版本:保持DedeCMS和相关插件的更新,以获取最新的功能和修复已知问题。
通过以上方法,可以有效解决DedeCMS文章编辑后时间不更新或显示为1970年1月1日的问题,希望本文能帮助您更好地管理和使用DedeCMS。
DedeCMS文章编辑后不更新时间的方法及修改1970年1月1日问题
问题
在使用DedeCMS进行文章编辑时,有时会遇到编辑后的文章时间显示为1970年1月1日的问题,这通常是由于系统时间设置错误或者某些插件导致的,以下是解决此问题的详细步骤。
解决步骤
1、检查系统时间设置
确保服务器的时间设置正确,进入服务器的控制面板,查看系统时间是否正确。
如果服务器时间设置错误,请按照以下步骤进行调整:
进入服务器控制面板。
找到时间设置选项。
根据服务器所在的时区调整时间。
保存设置并重启服务器。
2、检查DedeCMS系统设置
进入DedeCMS后台管理。
在系统设置中找到时间设置。
确保时间格式和时区设置正确。
如果有自定义的时间戳插件,检查其设置是否正确。
3、检查数据库配置
登录到数据库管理界面。
查看数据库中文章的时间字段是否被正确设置。
如果发现时间字段为1970年1月1日,可能是数据库中该字段的数据损坏或者未正确导入。
4、修改数据库记录
如果是数据库记录问题,可以使用以下SQL语句修改时间字段:
“`sql
UPDATE dede_arc SET pubdate=UNIX_TIMESTAMP(NOW()) WHERE aid=XX;
“`
其中XX
是文章的ID,UNIX_TIMESTAMP(NOW())
将当前时间转换为Unix时间戳。
5、检查缓存和插件
清除DedeCMS的缓存文件。
检查是否有插件或自定义代码修改了文章时间的获取方式。
6、更新或修复插件
如果是插件导致的,尝试更新插件到最新版本或查找修复补丁。
如果插件无法修复,可以考虑暂时禁用该插件。
通过以上步骤,可以解决DedeCMS文章编辑后时间显示为1970年1月1日的问题,如果问题仍然存在,可能需要进一步排查其他潜在的问题,如服务器配置、数据库问题等。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。