光看文字,可能不太明白,下面上图:
这是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; }