Неактивный пункт меню

Главные вкладки

Аватар пользователя Сьюз Сьюз 15 июня 2011 в 1:11

Здравствуйте.
Надо сделать некоторые пункты меню неактивными. Ходила по ссылкам и . Система сначала выдала, что я не имею права писать "" или "", а затем - что в коде прописан неправильный аргумент (видимо, $link_item). Короче, ни тот, ни другой коды не работают. Также смотрела menu_firstchild - не совсем то, что нужно. А нужно, чтобы просто был некликабельный пункт меню.

Что ещё можно сделать?

Комментарии

Аватар пользователя Сьюз Сьюз 15 июня 2011 в 2:50

эм.. не пропечаталось... Система выдает, что я не имею права писать <_none> или <_notlink> (без нижнего подчеркивания, конечно). И ссылки, по которым я ходила -
Номер раз: http://content-management-systems.info/drupal/snippet/931
Номер два: http://content-management-systems.info/drupal/snippet/278

Коды, указанные в этих ссылках, не работают.

Есть ещё варианты решения проблемы?

Аватар пользователя ihappy ihappy 5 января 2012 в 6:36

"Сьюз" wrote:
Неактивный пункт меню

Вот некогда не понимал, зачем это делать? Просто ради любопытства. зачем вводить в заблуждение пользователей?
Я когда вижу не активную ссылку, начинаю вспоминать МПХ и обкладывать создателя ими-же.

и да. просто вставте в поле ссылки #

Аватар пользователя OsterX OsterX 10 октября 2012 в 2:33

Может уже не актуально, но в комментариях к

"Сьюз" wrote:
Номер два: http://content-management-systems.info/drupal/snippet/278[/quote]
есть рабочее решение, я еще обернул тайтл в теги чтоб проще было в css обработать. В итоге получился код

<?php
function НАЗВАНИЕ ТЕМЫ_menu_item_link($link) {
  if (empty(
$link['localized_options'])) {
    
$link['localized_options'] = array();
  }
  if (
$link['type'] && $link['href'] == 'node/24') {
    return 
'<span>'.$link['title'].'</span>';
  }
  else {
    return 
l($link['title'], $link['href'], $link['localized_options']);
  }
}
?>

node/24 вместо этого адреса подставляем адрес страницы на которую сейчас ведет тот пункт меню, который нужно сделать некликабельным.

Решение конечно далеко от идеала, но если нужно переопределить всего один пункт, как в моем случае, то сойдет.

Аватар пользователя INTALL INTALL 4 марта 2013 в 20:08
/*Убираем ссылку в меню там где в поле описания пункта меню указано nolink, предварительно была создана страница нода с алиасом - урлом nolink*/
//Чуть чуть правим меню - добавляем обертку для ссылки и незабываем про что обертка добавится во все меню так что пишем условие
function phptemplate_menu_item_link($link) {
        if ($link['menu_name'] === "primary-links") {  
                if (empty($link['localized_options'])) {
                        $link['localized_options'] = array();
                }
                if ($link['localized_options']['attributes']['title'] === "nolink") {
                        $link['localized_options']['html'] = TRUE;
                        $link['href'] = "javascript:void(0)";
                        return '<div class="wrapper_link_menu"><a href="javascript:void(0)">'. $link['title'] .'</a></div>';
                } else {
                        return '<div class="wrapper_link_menu">'.l($link['title'], $link['href'], $link['localized_options']).'</div>';
                }
        } else {
                return l($link['title'], $link['href'], $link['localized_options']);
        }
}
Аватар пользователя Libertus Arator Libertus Arator 19 ноября 2013 в 18:29

Пробовал может не догоняю, но не нужно:
This is a dummy page used for placeholder and separator menu items. You should not be able to see this page

Ну, в смысле могу сделать пустую страницу, и ссыль на неё, - как сделать не кликабельной, т.е. она мне надо только для подпунктов...