Доброго времени суток!!!
Подскажи пожайста как мне убрать вкладку в профиле. Стоит модуль affilate он в профиле создает вкладку "партнерская программа" и там ещё кучу всяких подвкладок. Некоторые из подвкладок нужно убрать, но что бы отображаемая страница осталась рабочей т.к. на неё есть ссылки с других страниц.
Порылся в menu_router там если удаляешь запись - то пропадает и сама страчка. А если очистить поля title и title_callback то надпись убирается. Но блок ссыки <a><li></a></li>
всё-равно остается и подсвечивается естественно если в этой вкладке находишься.
В документации по API нашел что-то типа
'title callback': Функция для генерации названия пункта меню, по умолчанию t(). Если вы хотите вывести необработанные строки, установите этот параметр в FALSE.
Но если в поле title callback вбить FALSE выдет ошибку
Fatal error: Call to undefined function FALSE() in /var/www/vhosts/logista.ru/subdomains/api/httpdocs/includes/menu.inc on line 504
Скажи можно как-нить убрать по человечески что бы вкладка совсем пропала?
Комментарии
Из грубых(но вполне рабочих) решений - посмотрите в БД параметр parent.
Из более правильных - hook_menu()
в hook_menu_alter установить для нужного адреса тип MENU_CALLBACK
Спасибо сделал через базу, но хотелось бы с хуками разобраться. Расскажи если не лень. Просто я новичок в drupal.
У меня есть hook_menu в файле uc_affilate2.module вида:
<?php
function uc_affiliate2_menu() {
........
........ $items['user/%user/affiliate/clicks'] = array(
'title' => 'Unique Click Count',
'page callback' => 'uc_affiliate2_clicks',
'page arguments' => array(1),
'type' => MENU_LOCAL_TASK,
'access callback' => '_uc_affiliate2_user_access',
'access arguments' => array(1),
'file' => 'uc_affiliate2.user.inc',
'weight' => 7
);
..........
..........
}
?>В этом же файле я делаю создаю hook????
<?php
function uc_affiliate2_menu_alter(&$items) {
}
?>
или так??
<?php
function uc_affiliate2_menu_alter() {
}
?>
А вот куда там
<?php
define('MENU_CALLBACK', MENU_VISIBLE_IN_BREADCRUMB);
?>
вставлять так и не понял. Попробывал по разному чего-то никак не заработало((((
Поясните пожалуста, а то прошарить хочется а докуменции для новичка (типа что куда вставлять надо) почти нет.
В документации про hook_menu_alter написано
developer/hooks/core.php, строка 324
но у меня такой папки вообще нет. Её самому что ли надо сделать??
И не сердитесь за тупые вопросы с Drupal 5й день работаю...
http://drupal.org/node/144376
на странице api есть пример как
это уже за вас всё давно вставили
http://drupal.org/node/483324
Спасибо! Всё понял! Всё работает!
Кстати если через базу parent удалять - то всё равно потом появляется при обновлении кэша