如何在`add_action`回调中从`$post`中获得更多信息?

时间:2012-04-04 作者:Matthew

我设置了以下操作回调:

function abc_save_post($post_id, $post)
{
    // do stuff

    echo \'<pre>\'.print_r($post,true).\'</pre>\';
}
add_action(\'save_post\', \'abc_save_post\', 10, 2);
问题是$post 是一个非常精简的版本$_POST 而且丢失了很多我想获取的数据。如何将更多数据获取到$post?

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

只需使用post ID,由提供$post_id (并存储在$post->ID) 使用WordPress提供的各种功能获取与该帖子相关的任何额外数据(get_the_terms,get_post_meta 等等)。

在性能方面,使用这些函数而不是试图将更多数据强制输入到$post 对象(事实上可能正好相反),因为WordPress缓存与帖子相关的数据(如分类术语、帖子元数据等)

结束

相关推荐

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( $