質問: 分類法に各種の機能を設定する方法それ自体も既存の分類法を再登録するには? デフォルトの分類法、カテゴリー。デフォルトでは、edit_posts機能を持つ人だけが投稿作成/編集中にカテゴリを割り当てることができます。私は非常に限られた能力で役割を担っています。このロールのユーザにカスタムポストタイプの作成/編集中にカテゴリを割り当てさせたいのですが、edit_posts機能を与えることはできず、分類を編集することはできず、割り当てるだけです。これどうやってするの? 'assign_terms' => 'read'の設定は1つの選択肢ですが、分類を再登録しなくてもその値を設定する方法を教えてください。あるいは、分類法を割り当てるための下位レベルの役割の許可をどのように付与できますか?
回答: これはうまくいくはずですadd_action( 'init', 'register_category_again', 1 ); function register_category_again() { $user = wp_get_current_user(); if ( $user->roles[0] != 'your_custom_role' ) return; global $wp_taxonomies; unset( $wp_taxonomies['category'] ); global $wp_rewrite; $rewrite = array( 'hierarchical' => true, 'slug' => get_option('category_base') ? get_option('category_base') : 'category', 'with_front' => ! get_option('category_base') || $wp_rewrite->using_index_permalinks(), 'ep_mask' => ep_categories, ); register_taxonomy( 'category', 'post', array( 'hierarchical' => true, 'query_var' => 'category_name', 'rewrite' => $rewrite, 'public' => true, 'capabilities' => array( 'manage_terms'=> 'manage_categories', 'edit_terms'=> 'manage_categories', 'delete_terms'=> 'manage_categories', 'assign_terms' => 'read' ), 'show_ui' => true, 'show_admin_column' => true, '_builtin' => true, ) ); }