Регистрация
Вход через соцсети
Восстановление пароля

Меню второго уровня

Новый топик
11.03.2014, 18:16
Ответить | Цитировать
Arturito
Феерично
Arturito

Зарегистрирован:
2009-02-16
Сообщений: 11

Добрый день.

Подскажите, пожалуйста, как выводить добавить определенный класс к диву в верхнем меню, ТОЛЬКО при условии, если у этого раздела есть подразделы?

Например:

- Раздел 1
- Раздел 2
- Раздел 3 (должно добавляться <li class="arrow">)
--- Подраздел 1
--- Подраздел 2
--- Подраздел 3

Меню выглядит так:

$main_menu[0]['prefix'] = "";
$main_menu[0]['suffix'] = "";
$main_menu[0]['active'] = "<li class=\"current_page_item\"><a href='%URL'>%NAME</a>%NEXT_LEVEL</li>";
$main_menu[0]['unactive'] = "<li><a href='%URL'>%NAME</a>%NEXT_LEVEL</li>";
$main_menu[0]['active_link'] = "<li class=\"current_page_item\"><a href='%URL' rel='nofollow'>%NAME</a>%NEXT_LEVEL</li>";
$main_menu[0]['divider'] = "";
$main_menu[0]['sortby'] = "";

$main_menu[1]['prefix'] = "<ul class=\"sub-menu\">";
$main_menu[1]['suffix'] = "</ul>";
$main_menu[1]['active'] = "<li><a href=\"%URL\">%NAME</a></li>";
$main_menu[1]['unactive'] = "<li data-sub=\"%SUB\"><a href=\"%URL\">%NAME</a></li>";
$main_menu[1]['active_link'] = "<li><a href=\"%URL\">%NAME</a></li>";
$main_menu[1]['divider'] = "";

www.feerichno.ru
12.03.2014, 08:18
Ответить | Цитировать
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 943

Зачем это нужно? Я спрашиваю потому что и вправду удивлен для чего вам класс если в нем есть подразделы.
Вариант префикс подразделов поставить в ссылку разделов а после проверять если что-нибудь в %NEXT_LEVEL и выводить

Модуль "Почтовые уведомления" – настройка уведомлений на вашем сайте без программирования. Цена отзыв. Мне очень важно ваше мнение.
12.03.2014, 13:47
Ответить | Цитировать
Arturito
Феерично
Arturito

Зарегистрирован:
2009-02-16
Сообщений: 11

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

Не совсем понял про префикс...

www.feerichno.ru
12.03.2014, 15:53
Ответить | Цитировать
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 367

Код:

$main_menu[0]['prefix'] = "\";global \$main_menu;\$result.=\"";
$main_menu[0]['suffix'] = "";
$main_menu[0]['active'] = "<li class=\"current_page_item\"><a href='%URL'>%NAME</a>%NEXT_LEVEL</li>";
$main_menu[0]['unactive'] = "\".(\$db->get_var(\"SELECT COUNT(Subdivision_ID) AS count FROM Subdivision WHERE Parent_Sub_ID='\".\$data[\$i][Subdivision_ID].\"' AND Checked=1\") ? \"<li class='arrow'><a href='%URL'>%NAME</a>\".s_browse_sub(\$data[\$i][Subdivision_ID],\$main_menu[1]).\"</li>\" : \"<li><a href='%URL'>%NAME</a></li>\").\"";
$main_menu[0]['active_link'] = "<li class=\"current_page_item\"><a href='%URL' rel='nofollow'>%NAME</a>%NEXT_LEVEL</li>";
$main_menu[0]['divider'] = "";
$main_menu[0]['sortby'] = "";

$main_menu[1]['prefix'] = "<ul class=\"sub-menu\">";
$main_menu[1]['suffix'] = "</ul>";
$main_menu[1]['active'] = "<li><a href=\"%URL\">%NAME</a></li>";
$main_menu[1]['unactive'] = "<li data-sub=\"%SUB\"><a href=\"%URL\">%NAME</a></li>";
$main_menu[1]['active_link'] = "<li><a href=\"%URL\">%NAME</a></li>";
$main_menu[1]['divider'] = "";



Выводить с помощью s_browse_sub

Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
12.03.2014, 16:45
Ответить | Цитировать
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 943

Павел, костыли для хромых

А переверстать?
Вам всего лишь необходимо поменять местами ссылку и список.
Вы когда нибудь работали с сестринскими элементами?
По видимому нет рас ищете способ на php

$main_menu[0]['unactive'] = "<li>%NEXT_LEVEL<a href='%URL'>%NAME</a></li>";
В стилях вместо "класса" выставить "+"
Примерно так
Было ul li.active a {картинка стрелки}
Стало ul li ul + a {картинка стрелки}

Модуль "Почтовые уведомления" – настройка уведомлений на вашем сайте без программирования. Цена отзыв. Мне очень важно ваше мнение.
12.03.2014, 21:21
Ответить | Цитировать
Arturito
Феерично
Arturito

Зарегистрирован:
2009-02-16
Сообщений: 11

Верстка достаточно хитрая, попробуем сделать.

А вы не сталкивались с кропом изображений? Я отдельный топик открыл, но что-то никто не отвечает, а проблема, как я понимаю, у многих такая. Нормальной загрузки изображений нет(

www.feerichno.ru
13.03.2014, 08:14
Ответить | Цитировать
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 943

Топик я видел и если у меня нет ответа я не отвечаю.
Сталкивался 1 раз, но изобретать решения пока времени нет.
Я временно использовал максимально-примерно-допустимые размеры и после при помощи js высчитал стороны и выставил по середине высоты или ширины в зависимости от той которая более узкая

Модуль "Почтовые уведомления" – настройка уведомлений на вашем сайте без программирования. Цена отзыв. Мне очень важно ваше мнение.
198 196 2014-03-13 08:14:03 13546
Описание проекта