我制作了一个使用Wordpress REST API来获取数据的应用程序,用户可以操纵数据并从该应用程序添加自己的帖子。
该应用程序使用AngularJS编写,并使用http.post方法添加帖子,并使用http.put更新现有帖子。我们正在使用Pods插件制作的自定义帖子。
我试图找到一个动作钩子,只要用户向REST API发出http.post或http.put请求,该钩子就会触发。
到目前为止,我已经尝试过:
function on_all_status_transitions( $new_status, $old_status, $post ) {
if ( $new_status != $old_status ) {
// A function to perform actions any time any post changes status.
}
}
add_action( 'transition_post_status', 'on_all_status_transitions', 10, 3 );
还有:add_action(save_post)
谢谢!
答案 0 :(得分:0)
您是否尝试过rest_post_dispatch
挂钩?
允许在返回之前修改响应:
https://developer.wordpress.org/reference/hooks/rest_post_dispatch/
答案 1 :(得分:0)
我解决了问题
结果是我应保存JSON文件的文件夹未正确设置,从而导致错误。我检查了错误日志,就在那儿看到了问题所在。
正确设置文件夹的路径后,使用动作钩子触发的功能就起作用了。
这是在更新帖子或使用http.post或http.put方法从应用程序添加新帖子时用来触发功能的挂钩:
add_action('pods_api_post_save_pod_item_your_pod_name', 'your_function', 10, 3);
我正在使用Pods插件自定义帖子,这是他们文档中的操作钩子。