Я создаю модуль, который позволяет вашим пользователям добавлять каналы.Поэтому я хочу, чтобы мой код предоставлял вкладки, которые могут быть перезаписаны на слое темы.
Я думал, что это можно сделать с помощью hook_menu:
$items['tab_add_feed'] = array(
'title' => 'Add Feed',
'page callback' => 'xml_parser_add_feed',
'access callback' => 'user_access',
'access arguments' => array('manage own feeds'),
'type' => MENU_LOCAL_TASK,
);
примерно так, как описано вышеНо я использую его на лицевой стороне сайта.
Как я могу добавить вкладки или ссылки в верхней части моей страницы по-друпски?
// edit
В данный момент нет вкладок, может быть, мне нужно сделать их видимыми?
исправили это, добавив <a href="xml_parser/add_feed">add feed</a>
к функции обратного вызова главной страницы, но это уродливо, жестко запрограммировано и не доступно для темы.жду лучшего решения.
// edit
Это код, который я сейчас использую
function xml_parser_menu() {
$items = array();
$items['xml_parser'] = array(
'path' => 'xml_parser',
'title' => t('Feed'),
'description' => t('Add/edit feeds'),
'page callback' => 'xml_parser_manage_overview',
'access callback' => 'user_access', // get user access
'access arguments' => array('manage own feeds'), // check user if premission is set
'type' => MENU_NORMAL_ITEM,
'menu_name' => 'primary-links', // add to primary menu
);
$items['xml_parser/add_feed'] = array(
'path' => 'xml_parser/add_feed',
'title' => 'Add Feed',
'page callback' => 'xml_parser_add_feed',
'access callback' => 'user_access',
'access arguments' => array('manage own feeds'),
//'access' => user_access('maintain own subscriptions'),
'type' => MENU_LOCAL_TASK,
);
return $items;
}