建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

WordPress 发布文章时涉及的一些钩子

GG网络技术分享 2025-03-18 16:12 0


今天,主题新增了发表文章打分的功能,配合erphpdown,用户提交通过后即可打分。

顺便说一下,这里有一些关于 WordPress 发布文章的 HOOK:

publish_post:一个参数($post_ID),点击发布文章时触发;
save_post:一个参数($post_ID),在文章发布或更新时触发;
edit_post:有两个参数($post_ID,$post),只要编辑了已有帖子就会触发;
publish_future_post:一个参数($post_ID),在文章定期发布时设置的时间触发。 如果设置的时间早于发布时间,则不会触发;
transition_post_status:共有三个参数($new_status、$old_status、$post),实现功能比较强大,可以根据文章发布状态的变化来实现一些功能。
{$old_status}_to_{$new_status}:一个参数($post),比如draft_to_publish就是通常的文章发布事件
future_to_publish 可用于处理定时文章发布事件。
post_updated:共有三个参数($post_ID、$post_after、$post_before),当现有帖子更新时会触发。
其中 $post 是 post 对象; $post_ID 是帖子 ID; $post_status 是post对象的发布状态(包括new、publish、future、draft、pending、private、trash、auto-draft等); $post_type 是post 对象的发布类型(包括post、page、attachment、revision等)。
对比上面的函数描述,可以发现post_updated事件是最强大的,可以获取文章修改前后的所有内容,参数很多; 其次是transition_post_status事件,也比较强大; 其次是 {$old_status}_to_{$new_status } 事件更有针对性,可以针对特定情况捕获事件; 而publish_post、save_post、edit_post和publish_future_post这四个事件比较简单,可以根据情况使用。

标签: WordPress op

提交需求或反馈

Demand feedback