ertttert
Books-CMS.clan.su

Виды элементов меню

При добавлении элемента меню в хуке меню можно использовать ключ type (тип). Если тип не определен, то используется стандартный тип MENU_NORMAL_ITEM. В зависимости от назначенного типа Drupal по-разному воспринимает элемент меню. Каждый такой тип элемента меню состоит из ряда флагов, или атрибутов (см. includes/menu.inc). Флаги типов для элементов меню перечислены в табл. 4.3.

Таблица 4.3. Флаги типов для элементов меню

Двоичный Шестнадца-
теричный
Десятичный Константа Описание
000000000001 0x0001 1 MENU_IS_ROOT Элемент меню является корнем дерева меню
000000000010 0x0002 2 MENU_VISIBLE_IN_TREE Элемент меню видим в дереве меню
000000000100 0x0004 4 MENU_VISIBLE_IN_BREADCRUMB Элемент меню видим в навигационной цепочке
000000001000 0x0008 8 MENU_LINKS_TO_PARENT Элемент меню указывает на родительский элемент
000000100000 0x0020 32 MENU_MODIFIED_BY_ADMIN Элемент меню может быть изменен администратором
000001000000 0x0040 64 MENU_CREATED_BY_ADMIN Элемент меню создан администратором
000010000000 0x0080 128 MENU_IS_LOCAL_TASK Элемент меню является локальной задачей
000100000000 0x0100 256 MENU_IS_LOCAL_ACTION Элемент меню является локальным действием

Например, константа
MENU_NORMAL_ITEM (define('MENU_NORMAL_ITEM', MENU_VISIBLE_IN_TREE | MENU_VISIBLE_IN_BREADCRUMB))
содержит флаги MENU_VISIBLE_IN_TREE и MENU_VISIBLE_IN_BREADCRUMB, как показано в табл. 4.4. Поэтому тип MENU_NORMAL_ITEM содержит флаги 000000000110. В табл. 4.5 приведены доступные типы для элементов меню и соответствующие им флаги.

Таблица 4.4. Флаги типа для элемента меню MENU_NORMAL_ITEM

Двоичный Константа
000000000010 MENU_VISIBLE_IN_TREE
000000000100 MENU_VISIBLE_IN_BREADCRUMB
000000000110 MENU_NORMAL_ITEM

Таблица 4.5. Флаги, соответствующие типам элементов меню

Флаги меню Константы типа меню
MENU_NORMAL_ITEM MENU_CALLBACK MENU_SUGGESTED_ITEM* MENU_LOCAL_TASK MENU_DEFAULT_LOCAL_TASK
MENU_IS_ROOT          
MENU_VISIBLE_IN_TREE        
MENU_VISIBLE_IN_BREADCRUMB  
MENU_LINKS_TO_PARENT        
MENU_MODIFIED_BY_ADMIN          
MENU_CREATED_BY_ADMIN          
MENU_IS_LOCAL_TASK      
Так какую константу использовать при определении типа элемента меню? Посмотрите в табл. 4.5, решите, какие флаги нужны в вашем случае, и выберите константу, содержащую эти флаги. Подробное описание всех констант содержится в комментариях в файле includes/menu.inc. Чаще всего применяются MENU_CALLBACK, MENU_LOCAL_TASK и MENU_DEFAULT_LOCAL_TASK.
Всего комментариев: 0
Имя *:
Email *:
Код *:


Бесплатный конструктор сайтов - uCoz