Как спрятать пункт главного меню, но оставить его доступным?

Тема в разделе "Вопросы по работе с меню", создана пользователем lectar, 15.10.2010.

  1. Offline

    lectar Недавно здесь

    Регистрация:
    14.10.2010
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Мужской
    Нужно сделать кнопку "регистрация" так, чтобы она не отображалась в главном меню, но при переходе на страницу регистрации в модуле "Навигация по сайту" отображалось "Главная - Регистрация".

    Как такое сделать?

    В теории можно в CSS для пункта меню с нужным ID прописать "display: none;", только какое-то уж очень не красивое это решение.

    Может быть есть какой-нибудь модуль или хак для скрытия пунктов меню чтоб при этом при переходе по ссылке этого меню не выдавалось 404?

    UPD: у меню регистрация есть 2 подпункта (юр. лицо и физ. лицо), в них располагаются формы. Кнопка "регистрация" на главной ведет на один из подпунктов (статичная ссылка).

    Надеюсь понятно изложил что хочу получить в результате.
     
    Последнее редактирование: 15.10.2010
  2.  
  3. Offline

    lectar Недавно здесь

    Регистрация:
    14.10.2010
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Мужской
    Похоже, что проблему можно решить применив небольшой хак:
    В таблице jos_menu, в поле type ввести еще один тип пункта меню, например hidden.
    Далее в функции формирующей структуру меню ввести доп. условие, которое будет проверять тип элемента. Если у элемента, или у его родителя тип hidden - пропускаем элемент.

    Самостоятельно разобраться где происходит нужный мне этап формирование меню не удается - квалификация по php не позволяет.

    Гуру, укажите направление в котором рыть.
     
  4. Offline

    lectar Недавно здесь

    Регистрация:
    14.10.2010
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Мужской
    Проблема решена!

    Разобрался что к чему.
    Соберу всё до кучи, может кому и пригодится.


    в modules\mod_mainmenu\helper.php
    ищем:
    заменяем на:
    Это позволит прятать пункт меню типа Сепаратор.


    Чуть ниже находим:
    после последнего "break;" добавляем:
    Позволяет прятать пункты меню типа Внутренняя/Внешняя ссылка.

    Здесь: browserNav != 3 - это моё значение, у вас может быть другое (по-умолчанию имеет значение 0,1 или 2).
    В следующем шаге добавим эту самую циферку.

    Для того, чтобы добавить свой пункт в список "При нажатии открыть:" (находится в форме изменения параметров пункта меню)
    в administrator\components\com_menus\helpers\ ищем:
    После 3-й строки добавляем строку:
    В файлы \administrator\language\ru-RU\ru-RU.ini
    и
    language\ru-RU\ru-RU.ini добавляем:
    Сохраняем, вуаля!

    спасибо effrit за помощь.
     
    Последнее редактирование: 17.10.2010

Поделиться этой страницей

Загрузка...