Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- add_action( 'init', 'tcb_create_profession_taxonomy', 0 );
- function tcb_create_profession_taxonomy(){
- $labels = array(
- 'name' => _x( 'Professions', 'taxonomy general name' ),
- 'singular_name' => _x( 'Profession', 'taxonomy singular name' ),
- 'search_items' => __( 'Search Professions' ),
- 'all_items' => __( 'All Professions' ),
- 'parent_item' => __( 'Parent Profession' ),
- 'parent_item_colon' => __( 'Parent Profession:' ),
- 'edit_item' => __( 'Edit Profession' ),
- 'update_item' => __( 'Update Profession' ),
- 'add_new_item' => __( 'Add New Profession' ),
- 'new_item_name' => __( 'New Profession Name' ),
- );
- register_taxonomy( 'profession', array( 'professions' ), array(
- 'hierarchical' => false,
- 'labels' => $labels,
- 'show_ui' => true,
- 'query_var' => true,
- 'rewrite' => array( 'slug' => 'profession' ),
- 'capabilities' => array(
- 'manage_terms' => 'manage_professions',
- 'edit_terms' => 'edit_professions',
- 'delete_terms' => 'delete_professions',
- 'assign_terms' => 'assign_professions'
- )
- ));
- }
- add_action('init','tcb_create_people_posttype');
- function tcb_create_people_posttype() {
- register_post_type( 'people',
- array(
- 'labels' => array(
- 'name' => __( 'Peoples' ),
- 'singular_name' => __( 'People' ),
- 'add_new' => __( 'Add New People' ),
- 'add_new_item' => __( 'Add New People' ),
- 'edit_item' => __( 'Edit People' ),
- 'new_item' => __( 'Add New People' ),
- 'view_item' => __( 'View People Profile' ),
- 'search_items' => __( 'Search Peoples' ),
- 'not_found' => __( 'No Peoples found' ),
- 'not_found_in_trash' => __( 'No Peoples found in trash' )
- ),
- 'public' => true,
- 'supports' => array( 'title', 'thumbnail', 'editor', 'author' ),
- 'capability_type' => array( 'people', 'peoples' ),
- 'menu_position' => 3,
- 'rewrite' => array( 'slug' => 'people' ),
- 'taxonomies' => array( 'profession' ),
- )
- );
- flush_rewrite_rules( false );
- }
- add_action('admin_init', 'tcb_update_person_role_capabilities', 0);
- function tcb_update_person_role_capabilities(){
- if( 'person' == $_GET['remove_role'] ){
- remove_role('person');
- error_log('role removed');
- }
- $rolecaps = array(
- 'read' => true,
- 'upload_files' => true,
- );
- add_role( 'person', 'Person', $rolecaps );
- error_log('role added');
- $person =& get_role('person');
- // CPT People
- $person->add_cap('edit_peoples');
- $person->add_cap('publish_peoples');
- $person->add_cap('edit_others_peoples');
- $person->add_cap('read_people');
- $person->add_cap('read_private_people');
- $person->add_cap('delete_people');
- $person->add_cap('delete_others_people');
- // Levels
- $person->add_cap('level_0');
- $person->add_cap('level_1');
- $person->add_cap('level_2');
- // CTax Profession
- $person->add_cap('manage_professions');
- $person->add_cap('edit_professions');
- $person->add_cap('delete_professions');
- $person->add_cap('assign_professions');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement