| 1 | <?php |
|---|
| 2 | |
|---|
| 3 | add_action( 'init', function() { |
|---|
| 4 | $u = new WP_User(1); |
|---|
| 5 | $u->add_cap('argus_visitors'); |
|---|
| 6 | }); |
|---|
| 7 | |
|---|
| 8 | add_action( 'init', function() { |
|---|
| 9 | $post_caps = array( 'delete_post' => 'argus_admin', ); |
|---|
| 10 | $visitor_caps = $post_caps; |
|---|
| 11 | $visitor_caps = array_merge( $visitor_caps, array( |
|---|
| 12 | 'edit_post' => 'argus_visitors', |
|---|
| 13 | 'read_post' => 'argus_visitors', |
|---|
| 14 | 'edit_posts' => 'argus_visitors', |
|---|
| 15 | 'edit_others_posts' => 'argus_visitors', |
|---|
| 16 | 'publish_posts' => 'argus_visitors', |
|---|
| 17 | 'read_private_posts' => 'argus_visitors', |
|---|
| 18 | )); |
|---|
| 19 | |
|---|
| 20 | $v_args = array( |
|---|
| 21 | 'labels' => array ( |
|---|
| 22 | 'name' => 'Visitors', |
|---|
| 23 | 'singular_name' => 'Visitor', |
|---|
| 24 | 'add_new_item' => 'Register New Visitor', |
|---|
| 25 | ), |
|---|
| 26 | 'public' => true, |
|---|
| 27 | 'publicly_queryable' => false, |
|---|
| 28 | 'exclude_from_search' => true, |
|---|
| 29 | 'show_ui' => true, |
|---|
| 30 | 'show_in_menu' => 'argus', |
|---|
| 31 | //'show_in_menu' => false, |
|---|
| 32 | 'hiearchical' => false, |
|---|
| 33 | 'supports' => array( '' ), |
|---|
| 34 | 'capabilities' => $visitor_caps, |
|---|
| 35 | //'register_meta_box_cb' => array ( &$this, '_wp_visitor_meta_box_cb' ), |
|---|
| 36 | ); |
|---|
| 37 | |
|---|
| 38 | register_post_type( 'visitor', $v_args ); |
|---|
| 39 | } ); |
|---|
| 40 | |
|---|
| 41 | add_action( 'admin_menu', function() { |
|---|
| 42 | add_menu_page( 'Argus', 'Argus Admin', 'argus_visitors', 'argus', function() { echo 'menu'; }, '', -1 ); |
|---|
| 43 | add_submenu_page( 'argus', 'Argus Administration', 'Control Panel', 'argus_visitors', 'argus', function() { echo 'submenu'; } ); |
|---|
| 44 | } ); |
|---|