If you want to decide whom to allow adding xAPI Content. You can add the following code to your theme’s functions.php file.
And then, use a plugin like User Role Editor, to assign related custom capabilities.
add_filter("gb_xapi_content_post_args", "custom_gb_xapi_content_post_args"); function custom_gb_xapi_content_post_args($cpt_args){ $cpt_args['show_in_menu'] = true; $cpt_args['capability_type'] = 'xapi'; $cpt_args['map_meta_cap'] = true; $cpt_args['capabilities'] = array( 'edit_post' => "edit_xapi", 'read_post' => "read_xapi", 'delete_post' => "delete_xapi", 'edit_posts' => "edit_xapis", 'edit_others_posts' => "edit_others_xapis", 'publish_posts' => "publish_xapis", 'read_private_posts' => "read_private_xapis", 'read' => "read", 'delete_posts' => "delete_xapis", 'delete_private_posts' => "delete_private_xapis", 'delete_published_posts' => "delete_published_xapis", 'delete_others_posts' => "delete_others_xapis", 'edit_private_posts' => "edit_private_xapis", 'edit_published_posts' => "edit_published_xapis", 'create_posts' => "edit_xapis", ); return $cpt_args; } add_filter("learndash_submenu", "custom_grassblade_learndash_admin_tabs"); function custom_grassblade_learndash_admin_tabs($admin_tabs){ if (current_user_can('edit_xapis')) { $admin_tabs['grassblade']["name"] = __('xAPI Content', "grassblade"); } else { unset($admin_tabs['grassblade']); } return $admin_tabs; }