PUBLISH_POST的Add_action挂接不起作用

时间:2012-02-19 作者:Alastair Brayne

我无法在更新或保存后触发我的函数。我发现其他几个论坛帖子也有同样的问题,但从来没有找到答案:(

我的代码非常简单:

function pdfgenerator_update($post_ID) {
    global $MYTEST;
    $MYTEST["pageID"] = $post_ID;         
}
//add_action(\'trashed_post\',\'pdfgenerator_update\');
//add_action(\'publish_page\',\'pdfgenerator_update\');
//add_action(\'save_post\',\'pdfgenerator_update\');
//add_action(\'edit_post\',\'pdfgenerator_update\');
add_action(\'publish_post\',\'pdfgenerator_update\');
add_action(\'edit_post\',\'pdfgenerator_update\');
//add_action(\'edit_page_form\',\'pdfgenerator_update\');

global $MYTEST
$MYTEST["Am I running"] = "YIPPEE";
(注意:$MYTEST是一个数组,我用来收集调试信息,然后将其打印到管理员页脚中。)

正如你所看到的,我尝试了许多不同的钩子。我唯一工作过的是edit\\u page\\u表单。。。但这似乎没有传递任何参数。我确实需要这些参数。还有一个原则问题。如果正确的钩子是publish\\u posts,那么我很想知道为什么它对我来说失败了。

代码在我的主插件文件中,很明显,当YIPPEE正确打印时,它正在加载。

这不起作用似乎很荒谬。我找到了很多与此完全相同的教程和示例。坦率地说,我这里有点像猿猴。它应该能正常工作!我错过了什么?

非常感谢你的帮助。阿拉斯泰尔

1 个回复
最合适的回答,由SO网友:mor7ifer 整理而成

发布/保存帖子时,它不会在单个脚本执行中完成。它重定向到另一个脚本,进行保存,然后重定向回您开始的位置。如果要确认挂钩是否正常工作,请使用update_option(), 并在显示后立即删除该选项,使其不处于潜在状态(或者:你可以让选项计数或做其他事情,你可以做很多事情,要有创意)。

还有,你要找的钩子是save_post, 它在两个地方都开火wp_insert_post()wp_update_post() (实际上都是通过wp_insert_post() 不管怎么说,只要FWIW)。

结束

相关推荐

Custom Post Row Actions

我偶然发现this question 在写这个问题的时候。我有一个问题是关于这个问题的。我发现你用的是get_delete_post_link 筛选为我的操作创建一个新的url(或一个类似的函数——在任何情况下,我都会将该函数与布尔值一起使用)。唯一的问题是,I don\'t know how to capture the event now. 考虑到我在谷歌上找不到很多关于行后操作的例子,我将不胜感激-/public function _wp_filter_get_delete_post_link( $