WordPress.org

Make WordPress Core

Ticket #8597: 8597-mt.php

File 8597-mt.php, 1.2 KB (added by hakre, 5 years ago)

test plugin that creates a working menu in ACP with submenu entries that can be selected.

Line 
1<?php
2/*
3Plugin Name: Menu Test
4*/
5class MenuTest {
6 
7    public function __construct() {
8        add_action('admin_menu', array($this, 'admin_menus'));
9    }
10   
11    public function admin_menus() {
12        add_menu_page('Menu Test', 'Menu Test', 8, __FILE__ , array($this, 'main_menu'));
13        add_submenu_page(__FILE__, 'MenuTest Main', 'Main', 8, 'mt.php', array($this, 'main_menu'));
14        add_submenu_page(__FILE__, 'MenuTest Page2', 'Page2', 8, 'mt.php?ppage=2', array($this, 'main_menu'));
15        add_submenu_page(__FILE__, 'MenuTest Page3', 'Page3', 8, 'mt.php?ppage=3', array($this, 'main_menu'));
16        add_submenu_page(__FILE__, 'MenuTest Page4', 'Page4', 8, 'mt.php?ppage=4', array($this, 'main_menu'));
17        add_submenu_page(__FILE__, 'MenuTest Page5', 'Page5', 8, 'mt.php?ppage=5', array($this, 'main_menu'));    }
18   
19    public function main_menu() { ?>
20        <div class="wrap">
21            <div id="icon-options-general" class="icon32"><br /></div>
22            <h2>Page Title</h2>
23            <?php
24            if(isset($_GET['page'])) {
25                echo '<h3>' . $_GET['page'] . '</h3>';
26            } else {
27                echo '<h3>Main Page</h3>';
28            }
29            ?>
30        </div>
31        <?php
32    }
33}
34$mt = new MenuTest;
35?>