api.drupal.ru про локальные задачи:
В интерфейсе Друпал по умолчанию, вы найдёте много ссылок, которые показаны как вкладки. В системе меню они называются локальные задачи (local tasks) и по-умолчанию отображаются как вкладки (хотя и есть возможность представить их по-другому). Локальные задачи работают также, как и другие пункты меню во многих аспектах.
Реализуются с помощью типов MENU_DEFAULT_LOCAL_TASK и MENU_LOCAL_TASK:
/**
* Implements hook_menu().
*/
function mymodule_menu() {
// описание первой вкладки и по совместительству пункта меню
$items['admin/settings/mymodule'] = array(
'title' => 'MyModule', // заголовок страницы, будет выводится во всех вкладках, обязательный параметр
'page callback' => ..., // callback первой вкладки, обязательный параметр
'access arguments' => ..., // разрешения на просмотр дефолтной вкладки, обязательный параметр
'type' => MENU_NORMAL_ITEM, // пункт будет отображаться в меню
);
// описание дефолтной вкладки
$items['admin/settings/mymodule/settings'] = array(
'title' => 'Settings', // не переведённое название первой вкладки
'type' => MENU_DEFAULT_LOCAL_TASK, // пункт будет отображаться как локальная задача по умолчанию, т.е. выделяться при просмотре страницы "admin/settings/mymodule"
);
// описание второй вкладки
$items['admin/settings/mymodule/items'] = array(
'title' => 'Items', // не переведённое название второй вкладки
'page callback' => ..., // callback второй вкладки
'access arguments' => ..., // разрешения на просмотр второй вкладки, обязательный параметр
'type' => MENU_LOCAL_TASK, // пункт будет отображаться как локальная задача
'weight' => 2, // вес вкладки в списке вкладок
);
// описание третьей вкладки
$items['admin/settings/mymodule/add_item'] = array(
'title' => 'Add item',
'page callback' => ...,
'access arguments' => ...,
'type' => MENU_LOCAL_TASK,
'weight' => 3,
);
return $items;
}
Написанное актуально для
Drupal 6, Drupal 7