WordPress后台添加顶级菜单add_menu_page()函数的用法及实例代码
好的,下面是一份专业的提纲:
I. 介绍
A. WordPress后台添加顶级菜单的必要性
B. add_menu_page()函数的作用及优势
II. add_menu_page()函数的参数解析
A. 参数一:页面标题
B. 参数二:菜单标题
C. 参数三:用户权限
D. 参数四:菜单slug
E. 参数五:回调函数
F. 参数六:图标
G. 参数七:位置
III. 实例代码演示
A. 添加一个基础的顶级菜单
B. 添加一个有子菜单的顶级菜单
C. 添加一个自定义权限的顶级菜单
D. 添加一个有图标的顶级菜单
IV. 总结
A. add_menu_page()函数的简单易用性
B. 添加顶级菜单的多样性和适应性
C. 使用add_menu_page()函数的注意事项
V. 推荐资源
A. WordPress官网文档
B. WordPress插件和主题资源库
C. WordPress开发者社区
add_menu_page() 函数是 WordPress 中用于添加顶级菜单的函数。它的基本语法如下:
add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position );
其中,$page_title 是页面下面是一个简单的例子,展示如何使用 add_menu_page() 函数添加一个名为“测试菜单”的顶级菜单:
function test_menu_page() { add_menu_page( '测试菜单', '测试菜单', 'manage_options', 'test-menu', 'test_menu_output' ); } add_action( 'admin_menu', 'test_menu_page' );
在这个例子中,我们首先定义了一个名为 test_menu_page() 的函数,用于添加顶级菜单。在 add_menu_page() 函数中,我们定义了页面接下来,我们需要定义 test_menu_output() 函数,该函数将在用户单击菜单时执行。下面是一个简单的实例代码:
function test_menu_output() {
echo '<div class="wrap"><h2>测试菜单</h2><p>这是一个测试菜单。</p></div>';
}
在这个例子中,我们定义了 test_menu_output() 函数,用于输出菜单页面通过上述的实例代码,你可以很轻松地了解如何使用 add_menu_page() 函数来添加顶级菜单。通过自定义回调函数,你可以实现不同的功能和界面,以满足你的自定义需求。
一、WordPress后台添加顶级菜单 概述
想把我们的管理菜单在后台显示出来就用到了这个WordPress函数add_menu_page()函数,而add_menu_page(),这个函数是往后台添加顶级菜单先,也就是和“外观”、“插件”等一样的顶级菜单。今儿分享一下在 wordpress 后台侧边栏添加顶级菜单的方法,WordPress后台添加顶级菜单add_menu_page()函数的用法及实例代码,用到的函数是:add_menu_page()
一、add_menu_page()函数介绍
<?php add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position ); //$page_title页面title标签信息 //$menu_title 菜单标题 //capability 权限 //menu_slug 别名 //function 执行函数 //icon_url 菜单图标url地址 //position 此菜单项在菜单中的位置,警告:如果两个菜单项的位置属性相同,其中一个可能要被覆盖 ?>
三、参数详解
官方文档:https://developer.wordpress.org/reference/functions/add_menu_page/
$page_title
(字符串) (必须) 当选择菜单时,该文本将被显示在网页的标题中。
默认值: None
$menu_title
(字符串) (必须) 在菜单上显示的名称文本
默认值: None
$capability
(字符串) (必须) 用户权限,定义了具有哪些权限的用户会看到这个子菜单
默认值: None
$menu_slug
(字符串) (必须) 这个菜单的名称是指这个菜单(应该是菜单的唯一)。在3.0版本之前,这被称为文件(或处理)参数。如果函数的参数被省略了,这menu_slug应该是PHP文件处理菜单页面内容的显示。
默认值: None
$function
(字符串) (可选) 显示菜单页的页面内容的功能。
默 认值: None. 从技术上讲,函数的参数是可选的,但如果它没有提供,那么WordPress的假设包括PHP文件将生成的管理界面,无需调用一个函数。大多数插件作者选 择把页面生成代码放在主插件文件中的函数中。如果在函数的参数指定,可以使用的menu_slug参数任意字符串。这允许使用的页面,如 ?page=my_super_plugin_page 而不是 ?page=my-super-plugin/admin-options.php.
该函数必须在两种方法中引用:
如果该函数是一个类的成员,它应该被引用为 array( $this, ‘function_name’ )
在所有其他情况下,使用函数名本身就足够了
$icon_url
(字符串) (可选) 该菜单的左侧菜单。
Default: 空字符串
如果你有一个自定义的图像文件,你可以使用 plugin_dir_url( __FILE__ ) 函数来获得你的插件目录的网址,然后添加图像文件名到它。这个图标应该是 20 x 20 像素或更小。
(WP 3.8+) 假如 ‘dashicons-…’, 一个dashicon显示***https://developer.wordpress.org/resource/dashicons/。例如,默认的 “gear” 符号可以显式地指定 ‘dashicons-admin-generic’。
(WP 3.8+) 假如 ‘data:image/svg+xml;base64…’, 指定的SVG数据图像作为一个CSS背景。
加入是 ‘none’ (以前 ‘div’),图标是一个空的DIV CSS可以更换风格。
假如是 ” (默认值), “gear” Dashicon显示 (和 menu-icon-generic 添加到链接的CSS类)。
$position
(整 数) (可选) 菜单显示的位置,这个菜单应该出现在那个菜单里面。默认情况下,如果省略此参数,则菜单将出现在菜单结构的底部。数字越高,菜单的位置越低。警告:如果两 个菜单项使用相同的位置属性,其中的项目可能被覆盖,所以只有一项显示!使用十进制来代替整型值可以减少冲突的风险,例如 63.3 而不是 63 (Note: Use quotes in code, IE ‘63.3’).常用位置,4、6、59、99、100。
四、Wordpress默认菜单属性
函数的position参数,默认的菜单项属性位置如下:
2 Dashboard
4 Separator
5 Posts
10 Media
15 Links
20 Pages
25 Comments
59 Separator
60 Appearance
65 Plugins
70 Users
75 Tools
80 Settings
99 Separator
所以我们自定义菜单要想显示在最下面就把position参数设为100.
五、顶级菜单设置举例
我们可以把以下代码直接复制在万能的functions.php文件下面,但是为了减少文件的代码,我们可以在主题的根目录下再建立一个文件夹,比如叫inc,在这个文件夹下面建立我们主题自己的bootstrapwp-functions.php文件,然后在functions.php文件中引入:
<?php
function register_bwp_menu_page(){
add_menu_page( 'title标题', '菜单标题', 'administrator', 'bwp_slug','bwp_menu_page_function','',100);
}
function bwp_menu_page_function(){
echo '<h1>这是顶级菜单设置页面</h1>';
}
add_action('admin_menu', 'register_bwp_menu_page');
?>
各个用户角色所具有的权限,可以参看这个对应关系表:Capability vs. Role Table,横坐标是用户角色,纵坐标是用户权限,中间蓝色高亮部分为各个角色所拥有的权限。
提示:创建顶级菜单后,如果再需要添加子菜单时,会自动添加一个与顶级菜单同名的子菜单,想要修改此子菜单显示名称,可手动添加一个子菜单,将其在url中显示的字段设置与顶级菜单在URL中显示字段一致即可。
你可能还喜欢下面这些文章

摘要:在WordPress中新建导航菜单需先进入仪表盘,选择外观-菜单进入菜单设置界面。创建新菜单并命名,添加项目到菜单中,可添加页面、文章、分类目录、自定义链接等。可调整菜单顺序,设置菜单显示位置,保存菜单即可在前台显示。

WordPress后台菜单顺序无法自定义是许多用户的共同困扰。本文深入解析了这一设计背后的逻辑:菜单项通过优先级参数程序化排序,确保系统稳定性和一致性。针对实际需求,文章提供了三种解决方案:1)推荐使用Admin Menu Editor等插件

本文详细指导如何在WordPress中创建多层级导航菜单。首先阐明多级导航的必要性,如电商网站"电子产品>手机>配件"的层级需求,并确认主题支持自定义菜单功能。具体操作包括:创建新菜单、拖拽缩进建立层级关系(建议不超过三级),以及解决拖动异常

在WordPress中创建多级下拉菜单能有效组织复杂网站内容,提升用户体验。本文详细介绍了实现步骤:首先确认WordPress版本(5.0+)和主题支持多级菜单功能;通过"外观>菜单"创建新菜单后,用拖拽方式将子菜单项右缩进父项下方形成层级(

WordPress网站移动端菜单无法展开是常见但影响用户体验的关键问题。本文系统分析了故障原因与解决方案:从基础排查(清除缓存、检查更新、跨设备测试)到深入诊断(JavaScript/CSS冲突、主题兼容性),并针对不同主题类型(Astra、

我正在尝试创建一个这样的菜单:请注意产品下的下拉菜单如何包含图像和链接。是您的菜单项,如果您愿意,您可以使用它根据当前菜单项查询其他内容。将使用您自定义的类和函数,以便您可以修改输出的代码。

bar中添加自定义链接菜单,您可以在主题的functions.php文件中添加代码。以下是一个示例代码,演示如何添加自定义链接菜单:在上述代码中,表示在admin。在这个示例中,我们添加了一个顶级菜单项,其ID为,标题为“自定义链接”,链接为

WordPress仪表板是第一个屏幕,当您登录到您的博客的管理区域,将显示网站的概述将看到。Menu(仪表板菜单)WordPress仪表板提供了导航菜单,其中包含一些菜单选项,例如左侧的帖子,媒体库,页面,注释,外观选项,插件,用户,工具和设