0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 1964 Просмотров
*

Bodyanuk

  • Новичок
  • 3
  • 0 / 0
Здравствуйте. Вообщем.. проблема в логике, а точнее в связях.
На работе дали мне задание: "Перемести на наш форум меню из сайта, сделай его динамичным."!

По сути меню состоит из:
1) "категорий" и "подкатегорий"
2) отдельно с ссылок меню с подменю

Примерно такой вид:
Главная (подменю, подменю1, подменю2) / Пункт меню (подменю, подменю2) / Категория (подкатегория, подкатегория1) / Форум / Контакты

Нашел я таблицу: prefix_menu, по сути связь между пунктами и подпунктами должна быть через menutype && alias, но с такой логикой у меня работает только категория и подкатегория.

Обясните пожалуйста, как сама Joomla выводит? какая там логика? может у когото есть готовый запрос?

С уважением, Bodyanuk
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Посмотрите модуль меню - он Вас приведет к классу JMenuSite
*

Bodyanuk

  • Новичок
  • 3
  • 0 / 0
Посмотрите модуль меню - он Вас приведет к классу JMenuSite
Спасибо, не знал что Joomla есть на ГИТе. Как разберу запрос в SQL строку - сообщу о результате.
*

Bodyanuk

  • Новичок
  • 3
  • 0 / 0
Вот, вытянул SQL запрос
Код
SELECT m.id, m.menutype, m.title, m.alias, m.note, m.path AS route, m.link, m.type, m.level, m.language, m.browserNav, m.access, m.params, m.home, m.img, m.template_style_id, m.component_id, m.parent_id, e.element as component FROM tr_menu AS m LEFT JOIN tr_extensions AS e ON m.component_id = e.extension_id
WHERE m.published = 1 AND m.parent_id > 0 AND m.client_id = 0 ORDER BY m.lft

Теперь помогите кто то сформировать массив/два массива со строками меню.

Например один массив - строки главного меню
Второй массив - строки подменю

Здесь я делаю запрос и заганяю все строки в массив для удобства.
Код
$nq = 'SELECT m.id, m.menutype, m.title, m.alias, m.note, m.path AS route, m.link, m.type, m.level, m.language, m.browserNav, m.access, m.params, m.home, m.img, m.template_style_id, m.component_id, m.parent_id, e.element as component FROM tr_menu AS m LEFT JOIN tr_extensions AS e ON m.component_id = e.extension_id
WHERE m.published = 1 AND m.parent_id > 0 AND m.client_id = 0 ORDER BY m.lft';
$query = mysql_query($nq);

$menu = array();
while ($row = mysql_fetch_assoc($query)) {
$menu[] = $row;
}
« Последнее редактирование: 27.04.2013, 14:38:19 от Bodyanuk »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод меток

Автор Zegeberg

Ответов: 1
Просмотров: 613
Последний ответ 18.07.2023, 00:27:45
от Zegeberg
Вывод поля поиска первым пунктом в меню

Автор Mick_20

Ответов: 3
Просмотров: 576
Последний ответ 03.02.2023, 13:02:46
от Mick_20
Вывод тега метатега Rights или создание поля с автором

Автор Zegeberg

Ответов: 5
Просмотров: 1608
Последний ответ 26.07.2022, 19:38:56
от Zegeberg
Цикличный вывод материалов

Автор loop69

Ответов: 3
Просмотров: 642
Последний ответ 07.12.2019, 17:17:55
от beliyadm
Вывод изображения в модуле "Читайте также"

Автор Paveldz

Ответов: 0
Просмотров: 732
Последний ответ 23.10.2019, 10:55:41
от Paveldz