IsaacZ 发表于 2011-5-3 23:24:42

Discuz 7.2 论坛“提醒”消息的自动清理时间设置

提醒数据会在每日计划任务自动清除,无需人工干预。由于提醒和短消息不同并不强制阅读,因此默认的清除规则是“未读 3 天后清除,已读 30 天后清除”。无论您是否认为合理,可自行调整,调整方法如下:

打开 include/crons/cleanup_daily.inc.php,找到以下两行代码:
$db->query("DELETE FROM {$tablepre}promptmsgs WHERE new='1' AND dateline<'$timestamp'-259200", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}promptmsgs WHERE new='0' AND dateline<'$timestamp'-2592000", 'UNBUFFERED');



更改 SQL 语句后面数值(259200、2592000)即可。
计算原理:86400(1天的秒数) x 3(天) = 259200。
IsaacZ对这两个数据的顺序感到很费解:没看过的保留时间短,看过的反而保留时间长?——还是反过来感觉正常些。于是我修改成了:
$db->query("DELETE FROM {$tablepre}promptmsgs WHERE new='1' AND dateline<'$timestamp'-2592000", 'UNBUFFERED');
$db->query("DELETE FROM {$tablepre}promptmsgs WHERE new='0' AND dateline<'$timestamp'-259200", 'UNBUFFERED');


页: [1]
查看完整版本: Discuz 7.2 论坛“提醒”消息的自动清理时间设置