Je ne sais pas comment ajouter plusieurs fonctionnalités à la fonctionnalité 'assign_terms'.
Mon code est ci-dessous, remarquez le tableau de capacités dans la fonction register_taxonomy
/* Registers taxonomies. */
function cflnk_wod_score_register_taxonomies() {
/* Set up the artist taxonomy arguments. */
$wod_name_args = array(
'hierarchical' => false,
'query_var' => 'wod_name',
'show_tagcloud' => true,
'rewrite' => array(
'slug' => 'wod/name',
'with_front' => false
),
here --->>> 'capabilities' => array (
'manage_terms' => 'administrator',
'edit_terms' => 'administrator',
'delete_terms' => 'administrator',
'assign_terms' => 'administrator', 'editor', 'author', 'contributor'
),
'labels' => array(
'name' => 'WOD Names',
'singular_name' => 'WOD Name',
'edit_item' => 'Edit WOD Name',
'update_item' => 'Update WOD Name',
'add_new_item' => 'Add New WOD Name',
'new_item_name' => 'New WOD Name Name',
'all_items' => 'All WOD Names',
'search_items' => 'Search WOD Names',
'popular_items' => 'Popular WOD Names',
'separate_items_with_commas' => 'Separate wod names with commas',
'add_or_remove_items' => 'Add or remove wod names',
'choose_from_most_used' => 'Choose from the most popular wod names',
),
);
Lors de l'attribution de capacités à l'argument "capacités" de register_taxonomy()
, vous devez attribuer la capacité et non le rôle! utilisez donc des fonctionnalités que seul un rôle spécifique possède, par exemple:
'capabilities' => array (
'manage_terms' => 'manage_options', //by default only admin
'edit_terms' => 'manage_options',
'delete_terms' => 'manage_options',
'assign_terms' => 'edit_posts' // means administrator', 'editor', 'author', 'contributor'
)