2019年07月26日 17:02更新
广告代码1
作为WordPress多作者博客,也许你会希望发布文章的时间不要凑在一起,有一定的时间间隔可能更适合读者。比如,让WordPress每篇文章的发布时间至少间隔1小时,就是一个不错的做法。
将下面的代码添加到当前主题的 functions.php 文件:
//设定每篇文章的发布间隔
function force_time_between_posts($data, $postarr) {
global $wpdb;
if (empty($postarr['ID'])) return $data;
$latest = $wpdb->get_var("
SELECT post_date
FROM {$wpdb->posts}
WHERE post_status IN('future','publish')
AND post_type = 'post'
AND ID != {$postarr['ID']}
ORDER BY post_date DESC
LIMIT 1");
$distance = 60; // 时间间隔(分钟)
$latest = strtotime($latest);
$current = strtotime($data['post_date']);
if ($latest < $current) { $diff = $current - $latest; } else { $diff = 0; } if ($diff >= 0 && $diff < ($distance * 60)) {
$new_date = $latest + ($distance * 60);
$date = date('Y-m-d H:i:s',$new_date);
$date_gmt = get_gmt_from_date($date);
$data['post_date'] = $date;
$data['post_date_gmt'] = $date_gmt;
$data['post_status'] = 'future';
}
return $data;
}
add_action('wp_insert_post_data','force_time_between_posts',1,2);
以上代码中的 60 为时间间隔,你可以根据自己的需要修改,默认为 60 分钟。
代码的效果:发布新文章时,会自动检测上一篇文章的发布时间,如果超过60分钟,就直接发布,如果小于60分钟,就自动定时间隔60分钟发布。需要注意的是,所检测的是所有已发布和定时发布的文章中的最后一篇。
如果最后定时的那篇文章是第二天早上8点,那你后面写的文章,想定时到第二天早上8点以前都是不允许的,会自动定时为9点。via
测试:输入密码可见(有惊喜,先到先得)
广告代码1
过往今朝
- 2019 年: 让WordPress每篇文章的发布时间至...(43 回复)
老师更新速度能这么快呀,我一般也得一个星期才能写一篇。——Via
0
@微格说 留着,以备不时之需。我也更新不那么多,词穷。——Via
0
666——Via
0
@uv喷绘 666——Via
0
广告内容 已被隐藏!——Via
0
@cvsdf 广告?——Via
0
教程不错,学习了——Via
0
@森纯博客 拿走——Via
0
@格子老师 好的,先收藏一下咯 :smile:——Via
0
@在线工具 哈哈 都一样 我也是为了收藏 发的!!——Via
0
算法有了,想看看具体怎么实现的 :grin:——Via
0
@在线工具 看吧看吧 !!已经对你开放了!!——Via
0
可以的——Via
0
@Jdeal 发布内容比较多的时候 比较方便——Via
0
回复看看啊——Via
0
@iherb 好的啊!欢迎常来。——Via
0
人数多还行,人数少没什么意思啊——Via
0
@西贝博客 我觉得间隔挺对的,当然人更多一点更好。——Via
0
看看大佬。——Via
0
@慕仙 谢谢!!只不过不是大佬!!——Via
0
这个仿佛没必要吧——Via
0
@小王先森 方便一点 要不然得每次设置定时 不过 如果时间不规律的话 这个就没那么好用了 可以备份一份 以备不时之需——Via
0
这个要独立博客才用的。——Via
0
@repostone 我们都是独立博客呀!哈哈——Via
0
@repostone 你的博客 跟我的 https://about.photo.blog 一样——Via
0
回复什么呢?——Via
0
@老俍 刷新页面,鼠标放在二维码是就能看见提示!!关注公众号之后,公众号也会自动发提醒消息!——Via
0
找到完美的分享一下,我也想弄一个~~~——Via
0
@老俍 你是说回复可见么?我是网上搜的,加的代码,需要可以分享给你!!——Via
0
@老俍 你看看 我又增加了一个我自己修改的 密码可见! 也是通过代码实现的!——Via
0
我去,这个回复可见是咋弄的?——Via
0
@老俍 短代码加的 哈哈——Via
0
@老俍 我这个 code 代码 显示的不行 还没有解决办法——Via
0
@格子老师 你的
中代码一行不要太长,最好再添加个 overflow: scroll
。——Via0
@慕仙 谢谢 参照你给的建议 ,好看多了!!!——Via
0
@格子老师 你的 <code> 标签最好被 <pre> 标签包裹着,而且 <code> 中代码字符数一行不要太多。——Via
0
@慕仙 谢谢 参照你给的建议 ,好看多了!!!——Via
0
@格子老师 一般情况下,我都会去格式化下代码,这样代码不会一坨的,容易阅读,看起来比较舒服。
在线美化代码——Via
0
@慕仙 我去学习一下 ,我很少发 函代码 的内容,这个主要是为了备份,以备不时之需的!!——Via
0
@慕仙 试了一下,这段代码美化之后还是跟现在一样,只能手动美化了。——Via
0
@格子老师 你用 <?php > 包裹着格式化才会有效果。——Via
0
@老俍 你用 包裹就会有效果。——Via
0
@慕仙 明白了,以后,也可以直接用了。谢谢了。——Via
0