1. Уважаемые пользователи, прежде чем ответить в теме или создать новую,
    внимательно ознакомьтесь с правилами раздела

    Кому лень работать или руки не оттуда - пользуйтесь услугами специалистов
  2. Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.."

    Есть JED!!! Ищите там!!!

VM 2.x Как реализовать простое меню с подкатегориями в активной категории?

Тема в разделе "Virtuemart", создана пользователем Terin'yar, 6 ноя 2014.

Информация :
  • Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с правилами раздела
  • Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.." Есть JED!!! Ищите там!!!
  • Аналоги ищите там же - на JED!!!
  • Новая версия? - У кого будет - тот выложит!
  1. Terin'yar

    Terin'yar Постоялец

    Регистр.:
    20 июл 2010
    Сообщения:
    65
    Симпатии:
    5
    Если проще описать задачу, то нужно, что бы обычное меню категорий в Virtuemart 2 располагалось в нескольких местах шаблона. Но таким образом, что бы в месте отображения первичных категорий в дереве категорий, они отображались всегда. Далее когда пользователь переходит в одну из этих категорий, в месте предусмотренном в шаблоне для категорий второго уровня открывались категории второго уровня активной категории. Далее переходя на категорию второго уровня для пользователя в месте предназначенном для этого открывались категории третьего уровня.
    Пытаюсь реализовать это путем создания трех модулей меню с разными шаблонами, но так как в программировании не силен, не знаю куда и что подставлять. Думал получится взять какой нибудь шаблон из ..modules\mod_virtuemart_category\tmpl\, что собственно и сделал, удалить все лишнее, оставить только то, что отвечает за вывод первичных категорий в дереве категорий для первого меню - это получилось.
    Но вот с остальными двумя проблема, как не старался ничего не получается, те переменные которые отвечают в любом основном шаблоне вывода категорий за подкатегории не работают если их просто подставить в места предназначенные для вывода первичных категорий в мой получившийся шаблон для первого меню.
    Если придерживаться этого способа реализации данной задачи, здесь как то нужно во втором и третьем шаблонах меню назначить переменную которая отвечают за то, что бы понять в какую категорию перешел пользователь и далее с помощью каких-то функций открыть новое меню с подкатегориями соответствующей активной категории. Подскажите по этой переменной и функциям применимым для решения данной задачи, или может знаете другое решение?
    Я перекопал все что мог, но решения, к сожалению не нашел!
     
  2. aivalab

    aivalab

    Регистр.:
    18 ноя 2012
    Сообщения:
    382
    Симпатии:
    135
    В модуле трогать ничего не надо было.

    Реализовать просто с помощью Advanced Module Manager от NoNumber, с помощью возможностей которого можно настроить при каких условиях (в вашем случае категориях) отображать тот или иной модуль меню/подменю/категории в том или ином месте.
     
  3. Terin'yar

    Terin'yar Постоялец

    Регистр.:
    20 июл 2010
    Сообщения:
    65
    Симпатии:
    5
    Спасибо за содействие, но у меня проблема не стоит с возможностью отображения того, или иного модуля в том, или ином месте - это легко все реализуемо с помощью стандартных средств, если имеются знания в области верстки... В данном случае мне нужно что бы имелась возможность отображения только подуровня верхнего уровня активной категории, в месте в основном шаблоне предназначенном для этого, а в месте следующего подуровня, при переходе тут пользователем, таким же образом нужно отобразить только подуровень еще одной теперь уже этой активной категории на которую нажал пользователь. То есть в итоге если пользователь находится как бы на третьем этаже лестнице категории, должны быть отображены пункты меню двух активных категорий. Соответственно, хотелось бы понять в Advanced Module Manager возможна ли такая настройка и еще один не маловажный момент - так как многие сторонние модули передают гораздо больше запросов - обращений к бд, чем стандартный модуль категорий VM, вы случаем не тестировали Advanced Module Manager на предмет нагрузки, если он способен на необходимую настройку?
    Честно сказать, я уверен проще всего создать два шаблона для стандартного модуля вывода категорий VM для моей задачи и это не так сложно, зная какие переменные отвечают за вывод подуровня активной категории.
    Посмотрел Advanced Module Manager от NoNumber - к сожалению, однозначно не решает(
     
    Последнее редактирование: 7 ноя 2014
  4. alexandr.datsko

    alexandr.datsko Создатель

    Регистр.:
    20 июн 2012
    Сообщения:
    45
    Симпатии:
    7
    лично я бы не рекомендовал использовать nonumber везде, особенно в связке с виртумартом - когда дойдете до оптимизации по быстродействию заметите как сильно он вешает сайт, увеличивает скорость загрузки страницы... + на деле после сдачи сайта в структуру менеджер не часто будет лезть, а значит для большинства задач подойдет стандартный плагин

    по теме темы)

    я делал оптимальный модуль категорий, буквально в 2 запроса все дерево категорий и не важно насколько оно большое
    задачу решал бы так - несколько вариантов модуля вывода дерева категории просто для второго уровня маленькая доработка - родительскую категорию брать из той, где отображается при условии что она не 0, т.е. есть в пути
    что получите - отображение только блока подкатегорий текущей категории и не важно на какой уровень дошли - в блоке будут выводиться только подкатегории, можно настроить, чтобы показывались только прямые потомки
    т.к. если разобрать ссылку категории на вариант до преобразования в SEF у Вас будет примерно такая ссылка - site.com/index.php?option=com_virtuemart&view=category&virtuemart_category_id=YYY&Itemid=XXX, где YYY - ID текущей отображаемой категории
    в общем задача не такая сложная, чтобы прибегать к изврату nonumber+advanced modules (для которого надо будет для каждой подкатегории создавать отдельный модуль, если 4 уровня по 6 категорий, то получится 6^3 модулей - я бы на Вас посмотрел как Вы будете настраивать 216 штук))))

    P.S. проще всего - сделать копию стандартного модуля, настроить его оригинальный на вывод только категорий верхнего уровня, а копию подправить на вывод списка дочерних категорих текущей отображаемой
     
    Последнее редактирование модератором: 9 ноя 2014
    Terin'yar нравится это.
  5. Terin'yar

    Terin'yar Постоялец

    Регистр.:
    20 июл 2010
    Сообщения:
    65
    Симпатии:
    5
    alexandr.datsko, спасибо огромное, как я уверен за точный ответ, решаемый полностью мою задачу, именно так это и звучит :)
    Но в связи с тем, что знаний в программировании реально нет... То есть образно я все это понимаю, но так как не разу даже не вникал, сейчас будет достаточно сложно..думаю представляете) Нужно понять эти условия, как их применять с обращениями... Я понимаю, что для человека который "в теме" все это очень просто и не займет, наверное, и 10 мин.
    Я могу действовать в этих отношениях так, это сюда, то туда заместо этого..то есть очень тупо) Вам не сложно так разъясниться, что бы таким как я было понятно?