Отказ от superfish

Обсуждение смены дизайна, дополнительного функционала, SEO и т.п.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Отказ от superfish

Сообщение REM » 26 май 2017, 10:35

Доброго времени суток.
Пришлось отказаться от установленного скрипта superfish. Хотел использовать стандартное меню от bootstrap , фишка в том что я разобрался как изменить классы. Вот только не могу понять как добавлять к ссылке необходимые атрибуты.
В bootstrap это выглядит так:
Код: Выделить всё
<ul class="nav navbar-nav navbar-right">
        <li><a href="#">Link</a> </li>
        <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false" aria-haspopup="true">Dropdown <span class="caret"></span></a>
          <ul class="dropdown-menu">
            <li><a href="#">Action</a> </li>
            <li><a href="#">Another action</a> </li>
</
ul>

В файле MainMenu.php заменил:
Код: Выделить всё
Yii::import('zii.widgets.CMenu');
class MainMenu extends CMenu {
    public $activateItemsOuter = true;
    public $activeCssClass='dropdown';

Код: Выделить всё
if(isset($item['items']) && count($item['items']))
            {
                //echo "\n".CHtml::openTag('div', array('class'=>'submenu', 'style' => 'display: none;'))."\n";
                echo "\n".CHtml::openTag('ul class="dropdown-menu"',isset($item['submenuOptions']) ? $item['submenuOptions'] : $this->submenuHtmlOptions)."\n";

В loyaut/main.php добавил
Код: Выделить всё
<?php
            $this
->widget('application.components.MainMenu',array(
                'id' => '',
                'items'=>$this->topMenu,
                'htmlOptions' => array('class' => 'nav navbar-nav'),
                'submenuHtmlOptions'=>array('class'=>'dropdown'),
                'encodeLabel' => false,
                'activateParents' => true,
            )); ?>


Подскажите как добавить к ссылке меню второго и третьего уровня код, чтоб на выходе получилось:
Код: Выделить всё
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false" aria-haspopup="true">Dropdown <span class="caret"></span></a>
Мысль - это оргазм мозга. Те, кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать. (М.Кундера)
Аватара пользователя
REM
Гражданин
Гражданин
 
Сообщения: 153
Зарегистрирован: 28 мар 2014, 07:06
Откуда: Первоуральск
Очки репутации: 5

Re: Отказ от superfish

Сообщение Foton » 01 июн 2017, 11:43

Попробуйте посмотреть protected\modules\menumanager\models\Menu.php функцию normalizeMenuItems()
Foton
Разработчик
Разработчик
 
Сообщения: 431
Зарегистрирован: 26 янв 2012, 14:58
Очки репутации: 8


Вернуться в Вопросы и помощь по изменениям

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3