WordPress.org

Make WordPress Core

Ticket #16808: argus.php

File argus.php, 1.3 KB (added by dd32, 6 years ago)
Line 
1<?php
2
3add_action( 'init', function() {
4        $u = new WP_User(1);
5        $u->add_cap('argus_visitors');
6});
7
8add_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
41add_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} );