0

我正在尝试编写一个函数,当帖子状态设置为“发布”时,该函数将自动勾选后端的复选框字段。这是在我的functions.php 中。

function featured_post(){
if( get_post_status() == 'publish' )
{
update_post_meta( $post->ID, '_featured', '1' );
}
}

我已经通过调用 features_post() 将函数设置为在帖子预览模板中运行,但它似乎不起作用。谁能指出我正确的方向?

4

1 回答 1

0

您需要使用动作挂钩才能使您的功能正常工作。在您的情况下,您需要使用如下post_updated钩子:

function set_featured_post($post_ID, $post_after, $post_before){
  if( get_post_status($post_ID) == 'publish' ){
    update_post_meta( $post_ID, '_featured', '1' );
  }
}

add_action( 'post_updated', 'set_featured_post', 10, 3 );

通过WordPress Codex阅读有关此钩子的更多信息

于 2020-11-15T13:07:59.507 回答