Решено! joomla 3.5.1 не прописывается css класс ссылки пункта меню

Тема в разделе "CSS, HTML, Web 2.0, верстка по web-стандартам", создана пользователем samuel-led, 08.06.2016.

  1. Offline

    samuel-led Недавно здесь

    Регистрация:
    08.06.2016
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    Добрый день. Хочу изменить вид одного из пунктов основного меню на сайте. Указал CSS класс ссылки для пункта меню, но он не прописывается в код. На стили не реагирует. В чём причина, подскажите.

    18e4c6254d66.jpg
    7a8be959d6b9.jpg
    1f88eaab0fc0.jpg
     
  2.  
  3. OlegK
    Offline

    OlegK Russian Joomla! Team Команда форума ⇒ Профи ⇐

    Регистрация:
    17.01.2011
    Сообщения:
    7 813
    Симпатии:
    771
    Пол:
    Мужской
    Наверно в компоненте используемой для магазина. И модуль меню не стандартный ?
     
    Последнее редактирование: 08.06.2016
  4. Offline

    samuel-led Недавно здесь

    Регистрация:
    08.06.2016
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    Да. Стоит компонент joomshopping. Тоже подумал, что как-то с этим связано. Потом попробовал присвоить css класс для ссылки пункта меню "главная", который к магазину никакого отношения не имеет. не присваивается и всё, гад. Хотел найти в файле шаблона модуля меню нужный пункт и прописать класс непосредственно в код вручную. Пока не понял, какой файл править. Так понимаю в сайт/модулес/модменю/тпл/дефолт...
    --- добавлено: 08.06.2016 ---
    Меню самое обыкновенное, стандартный модуль joomla MainMenu. Только в него ещё прописались пункты из шаблона с фреймворком helix. Может, глушит как-то.
     
  5. OlegK
    Offline

    OlegK Russian Joomla! Team Команда форума ⇒ Профи ⇐

    Регистрация:
    17.01.2011
    Сообщения:
    7 813
    Симпатии:
    771
    Пол:
    Мужской
    Так более всего,что модуль меню переопределен. И нужно править уже вывод меню в шаблоне по умолчанию.
    Класс ссылки в стандартном шаблоне модуля меню
    Код (PHP):
    1. if (!empty($class))
    2.     {
    3.         $class = ' class="' . trim($class) . '"';
    4.     }
    5.  
    6.     echo '<li' . $class . '>';
     
  6. Offline

    samuel-led Недавно здесь

    Регистрация:
    08.06.2016
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    Хорошо, попробую. Спасибо. Потом отпишусь, что получилось.
    --- добавлено: 08.06.2016, первое сообщение размещено: 08.06.2016 ---
    75b1f6b6de59.jpg

    Ничего сделать не получилось. В папке шаблона меню помимо дефолта есть ещё 4 файла, которые на него собираются. PHP знаю очень поверхностно, поэтому путного сделать ничего не смог. Здесь, как я понял, шаблон для сборки меню в целом, а как задать класс для конкретного пункта, не разобрался. При изменении вышеуказанного кода ничего не меняется. Похоже, всё работает через какое-то другое место. Поразбираться можно, но в данном случае проще решить задачу другим путём. По крайней мере, в нужном мне пункте меню есть картинка, я могу к ней прицепиться через селектор img, а у заголовка при этом появился класс image-title. Можно сделать хоть что-то. Но в идеале нужен был класс для конкретного элемента списка и ссылки.
    В любом случае, спасибо, draff, что откликнулся.
     
  7. OlegK
    Offline

    OlegK Russian Joomla! Team Команда форума ⇒ Профи ⇐

    Регистрация:
    17.01.2011
    Сообщения:
    7 813
    Симпатии:
    771
    Пол:
    Мужской
    Ну ты сам писал про
    вот в папке шаблона и ищи переопределение шаблона модуля меню,в который и вноси правки.
    В любом случае переменная $class должна содержать значение параметра пункта меню, то есть класс ссылки .
     
  8. Offline

    samuel-led Недавно здесь

    Регистрация:
    08.06.2016
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    Нашёл helix- овский файл, формирующий меню. Лежал в папке plugins\system\helix3\core\classes

    Код (PHP):
    1. switch ($item->browserNav) {
    2.             default:
    3.             case 0:
    4.                 $output = '<a class="1234" '.$class.' href="'. $flink .'" '.$title.'>'.$linktitle.'</a>';
    5.             break;
    6.             case 1:
    7.                 $output = '<a '. $class .' href="'. $flink .'" target="_blank" '. $title .'>'. $linktitle .'</a>';
    8.             break;
    9.             case 2:
    10.                 $options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,' . $params->get('window_open');
    11.                 $output = '<a '. $class .' href="'. $flink .'" onclick="window.open(this.href,\'targetWindow\','. $options. ');return false;" '. $title .'>'. $linktitle .'</a>';
    12.             break;


    Дописал свой класс 1234 к ссылке. Вот что получилось.

    fa15b762d0b4.jpg

    Класс прописывается к ссылкам всех пунктов меню. Меня же интересует только один. Как его идентифицировать?
    --- добавлено: 09.06.2016, первое сообщение размещено: 09.06.2016 ---
    Ура! Всё оказалось гораздо проще. В настройках пункта меню есть вкладка Helix Megamenu Options. Там в самом низу можно прописать свой класс для выбранного пункта меню, что я и сделал. Получается , эти дополнительные вкладки для Helix как бы замещают собой стандартную жумловскую настройку и становятся в приоритете.

    01b1dbf89b23.jpg

    Вот что получаем в итоге:

    6a3c4dc71d58.jpg

    Что, собственно, и требовалось. Получилось как всегда, умные люди всё за тебя уже продумали, а ты об этом не знаешь и лезешь в код решать задачу самостоятельно.
    РЕШЕНО
     
  9. Hamster
    Offline

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

    Регистрация:
    10.11.2016
    Сообщения:
    1
    Симпатии:
    0
    Пол:
    Мужской
    Подскажите как в меню выделить отдельную ссылку, к примеру мне из 3-х разделов нужно выделить только один. Каким образом это можно реализовать
    см. пример что нужно сделать выделил подчеркнутым:
    sotrudnichestvo.jpg
    В целом я бы хотел всего лишь выделить пункт меню - Сотрудничество жирным шрифтом:
    Код (css):
    1. font-weight: bold;

    При этом чтобы другие элементы навигации не были затронуты.
     
  10. OlegK
    Offline

    OlegK Russian Joomla! Team Команда форума ⇒ Профи ⇐

    Регистрация:
    17.01.2011
    Сообщения:
    7 813
    Симпатии:
    771
    Пол:
    Мужской
    А в класс определить значение для свойства .
     

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

Загрузка...