在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 相关文章推荐
海河写的 Discuz论坛帖子调用js的php代码
Aug 23 PHP
php 获取本机外网/公网IP的代码
May 09 PHP
php中通过数组进行高效随机抽取指定条记录的算法
Sep 09 PHP
php不使用插件导出excel的简单方法
Mar 04 PHP
PHP获取文件行数的方法
Jun 10 PHP
[原创]php逐行读取txt文件写入数组的方法
Jul 02 PHP
PHP判断文件是否被引入的方法get_included_files用法示例
Nov 29 PHP
PHP 断点续传实例详解
Nov 11 PHP
php实现获取农历(阴历)、节日、节气的类与用法示例
Nov 20 PHP
PHP面向对象五大原则之接口隔离原则(ISP)详解
Apr 04 PHP
PHP让网站移动访问更加友好方法
Feb 14 PHP
关于Yii中模型场景的一些简单介绍
Sep 22 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 删除无限级目录与文件代码共享
2008/11/22 PHP
使用bcompiler对PHP文件进行加密的代码
2010/08/29 PHP
PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例
2016/04/11 PHP
php封装的表单验证类完整实例
2016/10/19 PHP
centos下file_put_contents()无法写入文件的原因及解决方法
2017/04/01 PHP
PHP抽象类和接口用法实例详解
2019/07/20 PHP
php根据地址获取百度地图经纬度的实例方法
2019/09/03 PHP
php 命名空间(namespace)原理与用法实例小结
2019/11/13 PHP
常用js脚本
2006/12/03 Javascript
IE与FireFox中的childNodes区别
2011/10/20 Javascript
JQuery的AJAX实现文件下载的小例子
2013/05/15 Javascript
基于pthread_create,readlink,getpid等函数的学习与总结
2013/07/17 Javascript
jquery获取tagName再进行判断
2014/05/29 Javascript
yepnope.js使用详解及示例分享
2014/06/23 Javascript
介绍JavaScript中Math.abs()方法的使用
2015/06/14 Javascript
JavaScript高级程序设计(第三版)学习笔记1~5章
2016/03/11 Javascript
Javascript小技能总结(推荐)
2016/06/02 Javascript
js 定位到某个锚点的方法
2016/11/19 Javascript
jquery购物车结算功能实现方法
2020/10/29 Javascript
基于jQuery实现顶部导航栏功能
2016/12/27 Javascript
在vue.js中使用JSZip实现在前端解压文件的方法
2018/09/05 Javascript
记录vue项目中遇到的一点小问题
2019/05/14 Javascript
JavaScript变量基本使用方法实例分析
2019/11/15 Javascript
微信小程序弹窗禁止页面滚动的实现代码
2020/12/30 Javascript
Python中的lstrip()方法使用简介
2015/05/19 Python
python中sys.argv参数用法实例分析
2015/05/20 Python
Matplotlib使用Cursor实现UI定位的示例代码
2020/03/12 Python
Farnell德国:电子元器件供应商
2018/07/10 全球购物
Street One瑞士:德国现代时装公司
2019/10/09 全球购物
俄罗斯电动工具和设备购物网站:Vseinstrumenti.ru
2020/11/12 全球购物
办公室主任岗位职责
2013/11/08 职场文书
校长寄语大全
2014/04/09 职场文书
村干部群众路线教育活动对照检查材料
2014/10/01 职场文书
优秀党务工作者先进事迹材料
2014/12/25 职场文书
大学运动会加油稿
2015/07/22 职场文书
MySQL空间数据存储及函数
2021/09/25 MySQL