wordpress后台制作教程(二):添加设置页面-add_menu_page函数

上一篇文章中我们说到了往wordpress后台“外观”下面添加一个子菜单项的函数add_theme_page(),今天这篇教程继续介绍另一个在wordpress后台添加菜单页面的函数:add_menu_page(),这个函数是往后台添加顶级菜单先,也就是和“外观”、“插件”等一样的顶级菜单。

函数介绍如下:

  1. <?php   
  2. add_menu_page( $page_title$menu_title$capability$menu_slug$function$icon_url$position );   
  3. //page_title页面title标签信息   
  4. //$menu_title 菜单标题   
  5. //capability  权限   
  6. //menu_slug  别名   
  7. //function  执行函数   
  8. //icon_url  菜单图标url地址   
  9. //position  此菜单项在菜单中的位置,警告:如果两个菜单项的位置属性相同,其中一个可能要被覆盖   
  10. ?>  

对于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,文件中原来的代码删掉吧。

添加新代码:

  1. <?php   
  2. function test_function(){   
  3.     add_menu_page( 'title标题', '菜单标题', 'edit_themes', 'ashu_slug','display_function','',6);   
  4. }   
  5.   
  6. function display_function(){   
  7.     echo '<h1>这是设置页面</h1>';   
  8. }   
  9. add_action('admin_menu', 'test_function');   
  10. ?>  

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

顶级菜单项

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

已有9条评论

  1. so
    so : 回复

    大佬,新建一个菜单叫新建教师,想问的是页面怎么展示教师录入信息呢,比如有教师姓名,头像等等这些个字段,另外就是怎么把这些信息保存到新建的教师表中呢?先行谢过

    • 阿树工作室
      阿树工作室 回复so: 回复

      这个功能不是要新建设置页面,而应是新注册一个文章类型,然后就像投稿功能一样提交数据。

  2. gigs
    gigs : 回复

    //page_title页面title标签信息
    //$menu_title 菜单标题

    这两个只要是中文在后台输出后,中文就乱码了,怎么回事儿?

    • 阿树工作室
      阿树工作室 回复gigs: 回复

      乱码问题基本都是文件编码导致的,,请检查文件的编码格式是不是UTF-8无BOM

      • gigs
        gigs 回复阿树工作室: 回复

        的确是文件的编码格式问题,谢谢

  3. 阿良
    阿良 : 回复

    不错老早看过了

  4. 刘毅
    刘毅 : 回复

    很全面的教程,十分感谢!!!

  5. 秦川博客
    秦川博客 : 回复

    很好的教程

  6. wenna
    wenna : 回复

    这个设置页面如何实现数据的访问?

发表评论