WordPress - 管理菜单 - 子子页面?

标签 wordpress oop menu admin children

我已将自定义菜单添加到后端的管理菜单中,并且我几乎总是有子页面,但是是否可以有第三级页面,或“子子菜单页面”?

代码片段:

add_action('admin_menu',array(new mmr_menu((isset($_GET['page']) ? $_GET['page'] : "mmr")),'mk_menu'));

class mmr_menu{
    public function mk_menu(){

        add_menu_page('MMR', 'MMR', 'administrator', PLUGIN_PREFIX.'mmr', array(&$this,'get_page'), PLUGIN_DIR.'inc/images/logo.gif');

        add_submenu_page(PLUGIN_PREFIX.'mmr', PLUGIN_PREFIX.'app_and_reg', 'Applications & Registrations', 'administrator', PLUGIN_PREFIX.'app_and_reg', array(&$this,"get_page"));

        // Doesn't work
        add_submenu_page(PLUGIN_PREFIX.'app_and_reg', PLUGIN_PREFIX.'payment_reports', 'Payments', 'administrator', PLUGIN_PREFIX.'payment_reports', array(&$this,"get_page"));
    }
}

PLUGIN_PREFIXPLUGIN_DIR 是定义,mmr_menu->get_page() 是一个公共(public)方法,我认为没有必要包括。

最佳答案

通常插件作者会为第三级页面创建选项卡。这些没有注册为单独的页面,但您可以添加查询参数来选择页面,并以这种方式链接到不同的选项卡。 示例:

<?php
function payment_reports() {

    // first, lets print out the tabs ?>
    <ul class="tabs">
         <a href="[sub-page url]&tab=first">Tab 1</a>
         <a href="[sub-page url]&tab=second">Tab 2</a>
         <a href="[sub-page url]&tab=third">Tab 3</a>
    </ul><?php

    switch ($_GET['tab']) {
        case 'second':
            output_first_tab();
            break;
        case 'third':
            output_first_tab();
            break;
        default:
            output_first_tab();
    }


}

?>

话虽如此,一些 WordPress 框架(链接 piklist)支持内置的第三级选项卡

关于WordPress - 管理菜单 - 子子页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14532791/

相关文章:

javascript - 根据图像在 WordPress 中的方向向图像添加类

php - 如何解析.mp3文件php

php - 修改php oop mysql查询

在类的所有方法中将参数转换为相同标准的 Pythonic 方式

php - 如何在wordpress中使用json API获取上传的文件

javascript - 如何通过 JavaScript 查明 WordPress 中的特定插件是否处于事件状态?

python - 如何在类中使用 Python 中的多重处理

javascript - 我正在尝试制作一个可折叠菜单,一次只打开 1 个纯 javascript

jquery - 允许固定垂直菜单在达到一定长度后滚动

menu - 在 Awesome WM 菜单中切换用户