Skip to main content
  • Create new account
  • Reset your password
张文涛的个人博客
致力于提供Drupal开发,实践等方面的精品资讯

Main navigation

  • 首页
  • 关于
  • Glossary
  • 分享

Breadcrumb

  • Home
  • 妙用hook_menu,让你的站点配置在Drupal后台占有一席之地
By admin | 3:31 PM CST, Wed October 15, 2014

光看文字,可能不太明白,下面上图:

drupal-admin-menu.png

这是admin/config页面的显示效果。右上角的test pane是我们自己加上去的。下面的代码演示如何实现这种效果:

/**
 * Implement hook_menu().
 */
function test_menu() {
  $items['admin/config/test'] = array(
    'title' => 'Test',
    'page callback' => array('system_admin_menu_block_page'),//秘诀就是这个函数了。
    'position' => 'right',//两个选项,left或right,决定显示的位置。
    'weight' => -100,//决定显示的排序,-100挺小的,所以排在右上角。
    'access arguments'  => array('access administration pages'),
    'file' => 'system.admin.inc',
    'file path' => drupal_get_path('module', 'system'),
  );
  //两个子菜单路径配置,需要遵循一定的规则。如果定义了admin/config/test,那么子菜单只能是这样子:admin/config/test/[path-name],这点需要特别注意。
  $items['admin/config/test/general-settings'] = array(
    'title' => 'General Settings',
    'page callback' => 'drupal_get_form',
    'page arguments' => array('test_admin_settings_form'),
    'access arguments'  => array('access administration pages'),
    'file' => 'test.admin.inc',
    'type' => MENU_NORMAL_ITEM,
  );
  $items['admin/config/test/mail'] = array(
    'title' => 'mail templates',
    'page callback' => 'drupal_get_form',
    'page arguments' => array('test_mail_settings_form'),
    'access arguments'  => array('access administration pages'),
    'file' => 'test.admin.inc',
    'type' => MENU_NORMAL_ITEM,
  );
  return $items;
}


Glossary

  • May 2023 (7)
  • March 2023 (1)
  • October 2022 (1)
  • October 2021 (2)
  • August 2021 (4)
  • June 2021 (2)
  • May 2021 (1)
  • April 2021 (2)
  • November 2020 (1)
  • June 2020 (2)
  • December 2019 (2)
  • November 2019 (1)
  • August 2019 (1)
  • February 2018 (1)
  • October 2017 (1)
  • September 2017 (1)
  • July 2017 (1)
  • June 2017 (2)
  • May 2017 (1)
  • March 2017 (3)
  • December 2016 (2)
  • November 2016 (4)
  • October 2016 (3)
  • June 2016 (1)
  • December 2015 (1)
  • November 2015 (6)
  • October 2015 (2)
  • September 2015 (1)
  • August 2015 (1)
  • July 2015 (1)
  • June 2015 (1)
  • May 2015 (1)
  • March 2015 (1)
  • January 2015 (1)
  • December 2014 (3)
  • October 2014 (5)
  • September 2014 (3)
  • August 2014 (1)
  • July 2014 (1)
  • June 2014 (1)
  • May 2014 (1)
  • April 2014 (2)
  • March 2014 (2)
  • February 2014 (2)
  • January 2014 (4)
  • December 2013 (1)
  • March 2013 (2)
  • February 2013 (2)
  • December 2012 (2)
  • November 2012 (4)
  • October 2012 (1)
  • September 2012 (6)
  • August 2012 (15)
  • July 2012 (5)
  • June 2012 (13)
  • May 2012 (9)
  • April 2012 (8)
  • March 2012 (9)
  • February 2012 (3)
  • January 2012 (1)
  • December 2011 (1)
  • November 2011 (6)
  • October 2011 (2)
  • September 2011 (17)
  • August 2011 (4)
  • July 2011 (4)
  • June 2011 (5)
  • May 2011 (4)

Copyright © 2025

苏ICP备14044171号-1