Переменная $ tabs обычно заполняется элементами меню типа MENU_LOCAL_TASK
.
Посмотрите на систему меню , и особенно на hook_menu()
, чтобы получить основную идею. Это сводится к отображению функций обратного вызова в пути. Если URL-адрес соответствует пути, определенному в hook_menu
(может содержать заполнители!), Будет вызвана функция обратного вызова, зарегистрированная для этого пути, для создания содержимого для этого URL-адреса.
Тип 'элемента hook_menu
определяет, как комбинация пути / обратного вызова представляется в системе. Это может быть MENU_CALLBACK
, что будет означать только зарегистрированную комбинацию пути / обратного вызова, но без соответствующей «реальной» записи меню. A MENU_NORMAL_ITEM
будет таким же, но со «стандартным» пунктом меню, например в меню навигации. MENU_LOCAL_TASK
такой же, но соответствующий пункт меню обычно отображается на вкладках $, а не в меню.
Все MENU_LOCAL_TASK
, которые используют один и тот же базовый путь, в итоге получат группу вкладок. Так что, если у вас были такие пути, как:
- некоторые / путь / tab1
- некоторые / путь / tab2
- некоторые / путь / tab3
и все они определены как MENU_LOCAL_TASK
, вы увидите одну вкладку для каждой из них на каждой странице, которую они представляют.
Таким образом, чтобы найти места, которые вам нужно изменить / улучшить, вы должны найти в своей кодовой базе все реализации hook_menu()
, которые определяют пути, где отображаются эти вкладки. Обратите внимание, что не все они должны быть определены в одном и том же месте, но могут быть из разных реализаций hook_menu
в разных модулях. Чем вам нужно добавить определения меню для вкладок, которые вы хотите добавить, сопоставляя соответствующие пути с функциями обратного вызова. Функции обратного вызова будут возвращать содержимое страниц, которые пользователь должен видеть при нажатии на вкладки.