根据发布事件中的类别名称添加新标记

时间:2017-04-19 作者:hercules

正如您在该操作中所看到的,它通过catname覆盖所有现有标记,如何添加新标记,保留当前标记,不仅在更新中,而且在发布事件中,因为我使用导入插件,当前我必须输入所有帖子并单击更新以采取所需的操作。

add_filter(\'wp_insert_post\', \'add_cat_to_tags\', 10, 3 );
function add_cat_to_tags( $post_ID, $post, $update ) {
   $tags = array();
   $cats = get_the_category( $post_ID );
   foreach ( $cats as $cat ) {
      $tags[] .= $cat->name;
   }
   // overwrites any existing tags!!
   wp_set_post_tags( $post_ID, $tags );
}
谢谢大家。

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

您必须添加true 参数设置为wp_set_post_tags() 作用已测试并运行,更正代码:

add_filter(\'wp_insert_post\', \'add_cat_to_tags\', 10, 3 );
function add_cat_to_tags( $post_ID, $post, $update ) {
   $tags = array();
   $cats = get_the_category( $post_ID );
   foreach ( $cats as $cat ) {
      $tags[] .= $cat->name;
   }
   // overwrites any existing tags!!
   wp_set_post_tags( $post_ID, $tags, true );
}