创建custom post type后,不想每次都手动输入标签和指定目录,这里有一段代码可以让你为custom post type指定默认的分类目录和标签,这样每次只需要点击保存即可,当然,这需要你的custom post type支持category和tag。
这段代码会检测要发布的文章是否指定了分类和标签,如果没有则应用默认设置,放在主题的functions.php中或做成插件。
/* set default category for custom post type */ function add_custom_default_term_automatically($post_ID) { global $wpdb; if(!wp_is_post_revision($post_ID)) { $defaultcat = array (8); //默认目录的ID $defaultterm = 'tag-name'; //默认的标签,用逗号分隔 //如果文章没有指定任何目录,则应用默认设置 if( !has_term('','category',$post_ID) ){ wp_set_object_terms( $post_ID, $defaultcat, 'category'); } //如果文章没有指定任何标签,则应用默认设置 if( !has_term('','post_tag',$post_ID) ){ wp_set_post_terms( $post_ID, $defaultterm, 'post_tag',true); } } } add_action('publish_book', 'add_default_term_automatically',10);
用到的action叫做
publish_my-custom-post-type
my-custom-post-type是你注册的custom post type的名称,例如上述代码中注册的post type名称是book
;