在WordPress的后台中添加顶级菜单和子菜单的函数详解


Posted in PHP onJanuary 11, 2016

添加设置页面-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 此菜单项在菜单中的位置,警告:如果两个菜单项的位置属性相同,其中一个可能要被覆盖  
?>

对于function参数,这个参数一般是函数名,如果在类中,要调用类的方法,使用array(类名,函数名)这样的形式调用。如果这个参数为空的话,menu_slug参数可以是一个文件路径。

上面函数的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

好了,还是以实例来讲解,这样才能李菊福嘛。在默认的Twenty Ten主题中新建一个myfuntions.php ,然后在functions.php文件中include用编辑器打开我们的myfunctions.php,
添加新代码:

<?php  
function test_function(){  
  add_menu_page( 'title标题', '菜单标题', 'edit_themes', 'ashu_slug','display_function','',6);  
}  
 
function display_function(){  
  echo '<h1>这是设置页面</h1>';  
}  
add_action('admin_menu', 'test_function');  
?>

可以看到,菜单位置是6,比较一下可发现,它将会在“文章”的后面,看:

在WordPress的后台中添加顶级菜单和子菜单的函数详解

已经出现了一个顶级菜单页面了。。。

添加子菜单项-add_submenu_page
添加子菜单项的函数如下:

<?php  
add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function );  
//parent_slug-父级菜单项的别名  
//page_title--页面的title信息  
//menu_title-菜单标题  
//capability-权限  
//menu_slug-别名  
//function-执行的函数  
?>

其实有了前两篇教程,这个函数的用法无需多言了。

实例,还是用上两篇教程中的文件(在默认的Twenty Ten主题中新建一个myfuntions.php ,然后在functions.php文件中include新文件)用编辑器打开我们的myfunctions.php,上一篇教程中我们已经添加了一个顶级菜单项,今天我们就在这个顶级菜单项的基础上添加一个子菜单项,保留昨天的代码,补充新的代码,之后myfunctions.php中的代码是这样:

<?php   
function test_function(){   
  add_menu_page( 'title标题', '菜单标题', 'edit_themes', 'ashu_slug','display_function','',6);   
}   
   
function display_function(){   
  echo '<h1>这是设置页面</h1>';   
}   
add_action('admin_menu', 'test_function');  
 
//以下是添加子菜单项代码  
add_action('admin_menu', 'add_my_custom_submenu_page');  
 
function add_my_custom_submenu_page() {  
  //顶级菜单的slug是ashu_slug  
  add_submenu_page( 'ashu_slug', '子菜单', '子菜单', 'edit_themes', 'ashu-submenu-page', 'my_submenu_page_display' );  
}  
 
function my_submenu_page_display() {  
  echo '<h3>子菜单项的输出代码</h3>';  
 
}  
 
?>

效果图是这样:

在WordPress的后台中添加顶级菜单和子菜单的函数详解

OK,添加子菜单项完成。。

PHP 相关文章推荐
PHP一些常用的正则表达式字符的一些转换
Jul 29 PHP
PHP在字符断点处截断文字的实现代码
Apr 21 PHP
ThinkPHP中RBAC类的四种用法分析
Nov 24 PHP
PHP的引用详解
Feb 22 PHP
php生成数字字母的验证码图片
Jul 14 PHP
Yii中创建自己的Widget实例
Jan 05 PHP
PHP数组去重比较快的实现方式
Jan 19 PHP
PHP使用http_build_query()构造URL字符串的方法
Apr 02 PHP
Laravel学习教程之request validation的编写
Oct 25 PHP
详解thinkphp中的volist标签
Jan 15 PHP
基于Laravel 多个中间件的执行顺序详解
Oct 21 PHP
PHP与Web页面的交互示例详解二
Aug 04 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
Jan 11 #PHP
[原创]PHP简单开启curl的方法(测试可行)
Jan 11 #PHP
详解YII关联查询
Jan 10 #PHP
PHP 设计模式系列之 specification规格模式
Jan 10 #PHP
PHP生成各种常见验证码和Ajax验证过程
Jan 10 #PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
Jan 09 #PHP
PHP统计目录中文件以及目录中目录大小的方法
Jan 09 #PHP
You might like
PHP中模拟处理HTTP PUT请求的例子
2014/07/22 PHP
培养自己的php编码规范
2015/09/28 PHP
分享PHP计算两个日期相差天数的代码
2015/12/23 PHP
TBCompressor js代码压缩
2011/01/05 Javascript
javascript dom追加内容实现示例
2013/09/21 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
String字符串截取的四种方式总结
2016/11/28 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
JS简单实现数组去重的方法分析
2017/10/14 Javascript
Vue props用法详解(小结)
2018/07/03 Javascript
Echart折线图手柄触发事件示例详解
2018/12/16 Javascript
element-ui带输入建议的input框踩坑(输入建议空白以及会闪出上一次的输入建议问题)
2019/01/15 Javascript
微信小程序tab切换可滑动切换导航栏跟随滚动实现代码
2019/09/04 Javascript
JS性能优化实现方法及优点进行
2020/08/30 Javascript
Python简单日志处理类分享
2015/02/14 Python
使用Python实现一个简单的项目监控
2015/03/31 Python
Python环境变量设置方法
2016/08/28 Python
连接pandas以及数组转pandas的方法
2019/06/28 Python
Python中*args和**kwargs的区别详解
2019/09/17 Python
tensorflow实现在函数中用tf.Print输出中间值
2020/01/21 Python
python3 logging日志封装实例
2020/04/08 Python
jupyter lab文件导出/下载方式
2020/04/22 Python
聊聊python中的异常嵌套
2020/09/01 Python
利用Python实现自动扫雷小脚本
2020/12/17 Python
详解python的xlwings库读写excel操作总结
2021/02/26 Python
使用HTML5 Canvas绘制直线或折线等线条的方法讲解
2016/03/14 HTML / CSS
日本著名化妆品零售网站:Cosme Land
2019/03/01 全球购物
华美博弈C/VC工程师笔试试题
2012/07/16 面试题
汽车专业学生自我评价
2014/01/19 职场文书
考研英语辞职信
2015/05/13 职场文书
飞越疯人院观后感
2015/06/09 职场文书
大学生见习总结报告
2015/06/24 职场文书
利用html+css实现菜单栏缓慢下拉效果的示例代码
2021/03/30 HTML / CSS
pyqt5蒙版遮罩mask,setmask的使用
2021/06/11 Python
Python 类,对象,数据分类,函数参数传递详解
2021/09/25 Python
【海涛解说】史上最给力比赛,挑战DOTA极限
2022/04/01 DOTA