boke112百科 » 问答中心 » 正文WordPress如何实现feed延迟发布几天或几小时发布?默认情况下,WordPress的feed更新文章的速度还是挺快的,不过我不想让feed更新太快,比如推迟3天,或一周等,那么应该怎么实现呢?本问题由网友于2025/01/22 18:00提出,已被浏览 1.35K 次我来回答我要提问 共1个答案 boke112百科(站长)2025-05-19 16:58回复 只需要将以下代码添加到当前主题的functions.php文件中并保存更新文件即可。 //防RSS采集,让WordPress RSS/Feed订阅数据自定义时间延时发布推送 - https://www.dujin.org/14132.html function publish_later_on_feed($where) { global $wpdb; if ( is_feed() ) { $now = gmdate('Y-m-d H:i:s'); //数据延迟1天显示,也就是feed只会输出截止到前天的数据,可根据实际需求自行修改 $wait = '1'; $device = 'DAY';//其他时间单位可参考https://www.dujin.org/14132.html中的说明 $where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait "; } return $where; } add_filter('posts_where', 'publish_later_on_feed'); 上述代码中的feed就是延迟1天输出,其中$wait = '1',这个“1”就是我们要设置的时间数字,后面的$device = 'DAY',这个“DAY”就是设置的时间单位“天”。 我们还可以自己站点的实际情况自行调整这个时间单位和时间数字,其中时间单位还可以选择SECOND、MINUTE、HOUR、 DAY、 WEEK、 MONTH、YEAR,对应意思就是秒、分、时、日、周、月、年。 以上答案整理自@缙哥哥 » 防RSS采集,让WordPress RSS/Feed订阅自定义延时发布推送 写回答 取消回复7 + 5 =
只需要将以下代码添加到当前主题的functions.php文件中并保存更新文件即可。
上述代码中的feed就是延迟1天输出,其中$wait = '1',这个“1”就是我们要设置的时间数字,后面的$device = 'DAY',这个“DAY”就是设置的时间单位“天”。
我们还可以自己站点的实际情况自行调整这个时间单位和时间数字,其中时间单位还可以选择SECOND、MINUTE、HOUR、 DAY、 WEEK、 MONTH、YEAR,对应意思就是秒、分、时、日、周、月、年。
以上答案整理自@缙哥哥 » 防RSS采集,让WordPress RSS/Feed订阅自定义延时发布推送