插件子菜单页面推荐结构和链接

时间:2019-03-05 作者:user1192309

抱歉,如果之前有人问过这个问题;我已经找了一段时间了,但找不到任何直接适用的。我正在构建我的第一个插件,并尝试遵循WP best practices.

我当前的插件结构如下所示:

- my-plugin
-- index.php
-- admin (folder
--- sub-menu-page.php
作为我组织的一部分,我正在尝试将我所有的插件页面分开。然而,我似乎无法将插件的子菜单链接指向sub-menu-page.php 文件这是我的菜单代码:

add_action(\'admin_menu\', \'my_menu_pages\');
function my_menu_pages(){
    add_menu_page(\'WISE Admin\', \'WISE Admin\', \'manage_options\', \'wise-menu\', \'my_menu_output\', \'dashicons-tickets\', 2 );
    add_submenu_page(\'wise-menu\', \'General Settings\', \'General\', \'manage_options\', \'general-settings\', \'general_settings\' );
    add_submenu_page(\'wise-menu\', \'Submenu Page\', \'Submenu Page\', \'manage_options\', \'admin/sub-menu-page\' );
    remove_submenu_page(\'wise-menu\', \'wise-menu\');
}
子菜单链接将我带到/wp-admin/admin/sub-menu-page 这显然不是我想去的地方。

我能就我做错了什么提出一些建议吗?

1 个回复
SO网友:MikeNGarrett

你很接近。

添加第一个子菜单页时,您希望复制初始菜单页。在你的第二个add_submenu_page 您缺少该页的函数回调。从技术上讲,此参数是可选的,但它会更改您的url/wp-admin/sub-menu-page/wp-admin/admin.php?page=sub-menu-page.

试一试:

add_action( \'admin_menu\', \'my_menu_pages\' );
function my_menu_pages() {
    add_menu_page( \'WISE Admin\', \'WISE Admin\', \'manage_options\', \'wise-menu\', \'my_menu_output\', \'dashicons-tickets\', 2 );
    add_submenu_page( \'wise-menu\', \'General Settings\', \'General\', \'manage_options\', \'wise-menu\', \'my_menu_output\' );
    add_submenu_page( \'wise-menu\', \'Submenu Page\', \'Submenu Page\', \'manage_options\', \'sub-menu-page\', \'submenu_settings\' );
}

相关推荐