WordPress后台添加侧边栏菜单

添加WordPress顶级管理菜单其实也是一件很是简单的事情,使用两个WordPress内置函数就能够解决问题,分别是 add_menu_page()add_action(),下面我提供一个php示例代码,添加到主题目录下的functions.php中就能够了:
  1. /**
  2. * 名称:WordPress后台添加顶级菜单
  3. * 做者:露兜
  4. * 博客:http://www.ludou.org/
  5. * 最后修改:2011年01月26日
  6. */

  7. // my_add_pages() 为 'admin_menu' 钩子的回调函数
  8. function my_add_pages() {
  9.     // 第一个参数'Help page'为菜单名称,第二个参数'使用帮助'为菜单标题
  10.     // 'manage_options' 参数为用户权限
  11.     // 'my_toplevel_page' 参数用于调用my_toplevel_page()函数,来显示菜单内容
  12.     add_menu_page('Help page', '使用帮助', 'manage_options', __FILE__, 'my_toplevel_page');
  13. }

  14. // my_toplevel_page() 用于显示菜单的内容,填写菜单页面的HTML代码便可
  15. function my_toplevel_page() {
  16.     echo '
  17.     这里填菜单页面的HTML代码
  18.     ';

  19.     // 如如下示例代码。 wrap 类是WordPress构建好的css类,能够在你的HTML代码中使用
  20.     /*
  21.     echo '
  22.     <div class="wrap">
  23.     <h2>使用帮助</h2>
  24.     <p>这里是使用帮助,经过阅读本文你将了解本程序的使用!有事请<a href="#">与我联系</a></p>
  25.     </div>
  26.     ';
  27.     */
  28. }

  29. // 经过add_action来自动调用my_add_pages函数
  30. add_action('admin_menu', 'my_add_pages');
复制代码
上面的代码注释已经比较清晰的介绍了主要内容,下面我再补充一点,关于add_menu_page的第三个参数,上面代码中传递了 manage_options 这个值,这个参数值为用户权限,也就是说只当当前已登陆的用户具备 manage_options这项权限时,才会在后台侧边栏显示你添加的这个菜单。须要提醒的是,这个是权限参数在WordPress 3.0中已被从新定义,以前版本能够往这个参数传递用户等级(1-10),可是若是你使用的是3.0之后的版本,请传递用户权限值。
     关于各个用户角色所具备的权限,能够参看这个对应关系表: Capability vs. Role Table,横坐标是用户角色,纵坐标是用户权限,中间蓝色高亮部分为各个角色所拥有的权限,英文也比较好理解,不懂能够找在线翻译。
最后上张图片,添加以上代码后,能够看到后台多了一个 使用帮助 的顶级菜单:

下面一段是从其余网站上看到的讲解教javascript

函数用法:php

add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position );

下面说说各参数:css

  • $page_title:(字符串) (必须) 这个参数是子菜单的标题,将会显示在浏览器的标题栏,默认为空;
  • $menu_title:(字符串) (必须) 显示的菜单名称,默认为空;
  • $capability:(字符串) (必须) 用户权限,定义了具备哪些权限的用户会看到这个子菜单(权限部分请看文章结尾处),默认为空,参照capability;
  • $menu_slug:(字符串) (必须) 显示在URl上面的菜单名称,默认为空;
  • $function:返回的方法名称;
  • $icon_url:(字符串) (可选) 显示的菜单图标,可使用plugin_dir_url( __FILE__ ),图标宽高为16像素;
  • $position:(整数) (可选) 显示菜单的位置。经常使用位置,4或者59或者99。

示例:java

<?php
add_action
('admin_menu', 'register_custom_menu_page');
function
register_custom_menu_page() {
    add_menu_page('自定义菜单标题', '测试菜单', 'administrator', 'myplugin/myplugin-index.php','',plugins_url('myplugin/images/icon.png'), 6);
}

//而后将下面的代码放到myplugin/myplugin-index.php文件中

echo "Admin Page Test";
//或者使用下面方法
add_action
('admin_menu', 'register_custom_menu_page');
function
register_custom_menu_page(){
    add_menu_page('菜单标题', '菜单名称', 'administrator', 'custompage', 'custom_menu_page',     plugins_url('myplugin/images/icon.png'), 6);
}
function custom_menu_page(){
    echo "Admin Page Test";
}
到此结束
数据库

2、添加侧边栏子菜单     全部的侧边栏子菜单,也就是在WordPress现有的菜单中,添加对应的子菜单,如往 工具菜单中添加一个子菜单 备份浏览器


     如下是php示例代码,添加到主题目录下的functions.php中就能够了:
  1. /**
  2. * 名称:WordPress后台添加侧边栏子菜单
  3. * 做者:露兜
  4. * 博客:http://www.ludou.org/
  5. * 最后修改:2011年01月26日
  6. */

  7. function my_add_submenu() {
  8.     add_submenu_page( 'tools.php', 'my_backup', '备份', 'manage_options', 'backup-page', 'my_magic_function');
  9. }

  10. // 用于显示菜单的内容,填写菜单页面的HTML代码便可
  11. function my_magic_function() {
  12.     echo '
  13.     这里填菜单页面的HTML代码
  14.     ';

  15.     // echo '
  16.     // <div class="wrap">
  17.     // <h2>备份</h2>
  18.     // <p>这里能够备份你的博客数据库。</a></p>
  19.     // </div>
  20.     // ';
  21. }

  22. // 经过add_action来自动调用my_add_submenu函数
  23. add_action('admin_menu', 'my_add_submenu');
复制代码
添加子菜单主要经过 add_submenu_page()函数来实现,这个函数有不少参数,下面我来介绍这几个参数的做用。下面是该函数的原型:
  1. add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function );
复制代码
$parent_slug
     这个参数为WordPress内置菜单的文件名称或缩略名,这里咱们一般采用菜单文件名的方式。传递这个参数,就说明要往这个顶级菜单添加子菜单, 以上示例代码中传递的值为 tools.php ,对应工具顶级菜单,下面提供这个参数的全部值及其对应的顶级菜单:
  • index.php:控制板
  • edit.php:文章
  • upload.php:媒体
  • link-manager.php:连接
  • edit.php?post_type=page:页面
  • edit-comments.php:评论
  • themes.php:主题
  • plugins.php:插件
  • users.php:用户
  • tools.php:工具
  • options-general.php:设置
$page_title
     这个参数是子菜单的标题,将会显示在浏览器的标题栏。
$menu_title
     这个是子菜单的名称,将会显示在侧边栏
$capability
     用户权限,这个定义了具备哪些权限的用户会看到这个子菜单,具体的参数值,能够参考上面第一部分的顶级菜单的说明。
$menu_slug
     子菜单的缩略名,请使用一个惟一的名称,英文形式。
$function      全部调用的函数名称,经过调用这个函数来显示这个子菜单页面的内容
相关文章
相关标签/搜索