wordpress发布文章时的Action事件
昨天一网友加QQ询问关于wp-sns-share对于定时发布文章同步微博失效的问题,然后LZ才知道wordpress还支持定时发布文章文章这一神奇的功能,原来在发布文章的界面点击 “立即发布” 右边的编辑按钮选择一个未来的时间,再点击确定,就变成定时发布了。
wordpress实现定时发布的原理,模拟了一套CRON API,位于/wp-includes/cron.php。程序上并没有真正每分钟都去扫描一次而是在有用户访问的时候才去检测是否到了触发的时间,如果满足触发条件就新发起一个http请求(这样异步的方式不会阻塞原来那次http访问),坏处就是如果完全没有人访问的话,定时就失效啦,而且比较难做到很准时除非每分每秒都有访问量。
为了搞明白wp-sns-share对于定时发布文章同步微博失效的原因,对着wordpress源码调试了很久,顺带着把这块源码摸熟了不少,搞清楚了Action事件这一套路,值得讲一讲。