更新帖子后如何更新帖子作者
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了更新帖子后如何更新帖子作者相关的知识,希望对你有一定的参考价值。
我想在更新帖子后通过获取当前用户ID来更新post_author,但是当我使用这个函数时,wordpress通过复制当前帖子来创建新的具有正确作者的帖子。
function change_author () {
if ( ! wp_is_post_revision( $post_id ) ){
$post= array(
'ID' => $post_id,
'post_author' => get_current_user_id(),
);
wp_update_post( $post );
}
}
add_action('save_post', 'change_author');
答案
我会使用 wp_insert_post_data 钩子。 而不是 save_post
. 与其在保存后再更新帖子,不如在数据被插入数据库之前就改变数据,作为保存帖子操作的一部分。下面是我要做的。
function change_author ( $data ) {
if ( ! wp_is_post_revision( $data['ID'] ) ){
$data['post_author'] = get_current_user_id();
}
return $data;
}
add_filter( 'wp_insert_post_data', 'change_author', 10, 1 );
以上是关于更新帖子后如何更新帖子作者的主要内容,如果未能解决你的问题,请参考以下文章