^ 回到顶部
  • 人生没有定律,每个人都有自己的节奏
  • 本站wordpress建站教程均通过实践后发布,希望对你有帮助
  • 希望你的坚持,都是因为热爱,而不是因为不甘心
  • 5年wordpress建站经验,5星服务品质
  • 那些不愿意让你吃亏的人,才是真正值得你深交的人,也是值得你付出时间的人
  • 阿里云1核2g仅需102元/年,今日10点开抢

如何在wordpress后台添加子菜单,你需要了解add_submenu_page()的用法

阿里云双12限时特惠

今天小雨给大家分享的 wordpress 后台定制是如何添加一个子菜单页面:

add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function,$position);

参数#参数
$parent_slug
(字符串) (必需) 父菜单的名称(或标准 WordPress 管理页面的文件名)。

$page_title
(字符串) (必需) 选择菜单时在浏览器标签中显示的文本。

$menu_title
(字符串) (必填) 用于菜单显示的文本,也就是你在左侧实际看到的文本。

$capability
(字符串) (必需) 向用户显示此菜单所需的权限,也就是说定义哪些用户可以看到这些权限。

$menu_slug
(字符串) (必需) 此菜单在浏览器地址栏显示的 url(?page=url)。此菜单应该唯一,并且仅包含小写字母数字,破折号和下划线字符,以便与 sanitize_key()兼容。

$function
(callable) (可选) 将被调用以输出此页面内容的函数。

默认值: ''

$position
(int) (可选) 应在菜单项中显示此项目的位置。

默认值:null

那么 wordpress 有哪些标准的管理页面呢?你可以把鼠标放到各个菜单下来查看浏览器左下角显示的链接,大概有下面这些:

1、在仪表盘添加子菜单: add_submenu_page( 'index.php', … );

2、在文章处添加子菜单: add_submenu_page( 'edit.php', … );

3、在媒体处添加子菜单: add_submenu_page( 'upload.php', … );

4、在链接处添加子菜单: add_submenu_page( 'link-manager.php', … );

5、在页面处添加子菜单: add_submenu_page( 'edit.php?post_type=page', … );

6、在评论处添加子菜单: add_submenu_page( 'edit-comments.php', … );

7、在你自定义文章类型处添加子菜单: add_submenu_page('edit.php?post_type=your_post_type',…)

8、在外观处添加子菜单: add_submenu_page( 'themes.php', … );

9、在插件处添加子菜单: add_submenu_page( 'plugins.php', … );

10、在用户处添加子菜单: add_submenu_page( 'users.php', … );

11、在工具处添加子菜单: add_submenu_page( 'tools.php', … );

12、在设置处添加子菜单: add_submenu_page( 'options-general.php', … );

权限这些又是如何定义的呢?一般我们填'manage_options'就够了,如果需要细分这些权限,可以参考官方最新文档:https://wordpress.org/support/article/roles-and-capabilities/

说了这么多,小雨给大家举个例子吧:就来一个高级点的例子,假设我们在一个类中调用这个函数,那么 function 应该为一个数组,该数组中的第一个值是该类的实例,而该数组中的第二个值将是对象中的方法(给定作为字符串)。

Class WPDocs_AdminPage
{
    private $_plugin_name;
 
    private $_version;
 
    public function __construct( $plugin_name, $version )
    {
        $this->_plugin_name = $plugin_name;
        $this->_version = $version;
    }
 
    public function wpdocs_create_menu_and_submenu_page()
    {
        add_menu_page(
            'PAGE TITLE', 'MENU TITLE', 'CAPABILITY', 'menu_slug',
            array( $this, 'wpdocs_method_name_in_the_class' ), 'icon_url', 'POSITION'
        );
        add_submenu_page(
            'parent_slug', 'PAGE TITLE', 'MENU TITLE', 'CAPABILITY', 'menu_slug', 
            array( $this, 'wpdocs_method_name_in_the_class' )
        );
    }
}
$admin_page = new WPDocs_AdminPage;
add_action( 'admin_menu', array( $admin_page, 'wpdocs_create_menu_and_submenu_page' ) );

让小雨知道,这篇文章帮到了你

展开阅读全文

扫码关注微信公众号zs40086(微搜片)随时随地微信看片,抢先福利电影等你来

热门推荐

如有疑问,请前往问答中心反馈!

反馈