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

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

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

[Помощь] Выделение главной страницы virtuemart в меню.

Тема в разделе "Virtuemart", создана пользователем Avi, 25 янв 2014.

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

    Avi Постоялец

    Регистр.:
    10 фев 2013
    Сообщения:
    92
    Симпатии:
    28
    Сразу к сути. Имеется меню всего с 2мя пунктами: на главную вирта и она же главная сайта, и другой пункт. Все страницы вирта имеют один itemid, соответственно пункт "главная" подсвечивается и на страницах категорий, страницах товаров. А нужно только в случае нахождении на главной. Бьюсь час, не придумал ничего лучше костыльного решения яваскриптом =\. Ушел спать, нужна помощь :dk:
     
  2. silmarion

    silmarion

    Регистр.:
    21 июн 2012
    Сообщения:
    194
    Симпатии:
    19
    Тебе нужно создать пункты меню для категорий, соответственно ItemId Будет у каждой категории, и товаров внутри этой категории свой, или не вариант?
     
    Avi нравится это.
  3. Avi

    Avi Постоялец

    Регистр.:
    10 фев 2013
    Сообщения:
    92
    Симпатии:
    28
    Тут проблема в том, что активной пометится все равно главная страница, даже при нахождении в категории. Т.к. вирт внутри оперирует своими итемидами и не изменяет установленный активный элемент. За попытку помочь - спасибо)
     
  4. Genk0

    Genk0 Инквизитор из раздела J!

    Moderator
    Регистр.:
    2 июн 2010
    Сообщения:
    1.639
    Симпатии:
    1.337
    Первый созданный пункт на главную вирта будет приоритетнее второго.
    Иными словами - сначала нужно создать скрытое меню на главную вирта, а затем точно такое же СОЗДАТЬ как главную сайта.
    Вирт должен (теоретически) брать первый созданный пункт меню как активный.
    НО, можно исправить шаблон главной страницы вирта и прописать в нем жестко itemid :facepalm:
    Все теория!
     
    Avi нравится это.
  5. silmarion

    silmarion

    Регистр.:
    21 июн 2012
    Сообщения:
    194
    Симпатии:
    19
    К примеру у тебя есть главная страница в меню
    к ней ты привязал главную вмарта верно?
    Теперь к примеру у тебя есть 5 категорий
    Категория 1
    Категория 2 и т.д.

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

    А вообще дай ссылку на сайт (если не на локалке конечно) посмотрим.

    Просто оч. много магазинов на вмарте делал
    всегда категория привязывается к итемид, не могу понять почему у тебя возникла такая проблема
     
    Avi нравится это.
  6. dima_v

    dima_v Создатель

    Регистр.:
    1 окт 2011
    Сообщения:
    20
    Симпатии:
    7
    Скорее всего это связано с глюками самого вирчемарта.

    У меня была аналогичная ситуация.

    Вирчемарт 2.0.20a - все работает ок.
    Обновляюсь (на любую из последующих версий, последовательно или с перескакиваниями) - начинаются чудеса с потерей категорий и вообще путей.
    Разбирался и обнаружил, что при формировании страницы просмотра товара или просмотра категории половина значений в $this просто отсутствует. Какая-то ошибка. Глюк. Баг. Ерунда короче.

    так и работает магазин на той версии, где нет ошибок.

    Особенно интересно то, что если делать магазин с нуля на любой из последующих версий, то таких ошибок не возникает. О_о
    т.е. глюк вылазит при обновлении.

    Совет - попробуйте достать одну из более ранних резервных копий, пока еще все было в порядке.

    и, кстати, у нескольких знакомых вебмастеров были подобные проблемы с обновлениями - так один сайт невозможно обновить выше 2.0.14 (начинают сыпаться ошибки), а другой так и остался 2.0.6 (там вообще при обновлении все становится грустно).
     
  7. wolfzp

    wolfzp Постоялец

    Регистр.:
    9 апр 2013
    Сообщения:
    110
    Симпатии:
    25
    Есть еще одна смелая идея, и, думаю, будет работать корректно (но идею не проверял) - а именно, создать 2 одинаковых модуля этого главного меню с разными стилями CSS (например .menu1 и .menu2) - в одном из них будет подсвечиваться (выделяться) активный пункт меню, в другом нет.
    Первый модуль выводить только на двух страницах (главная и второй пункт), второй модуль выводить на всех остальных кроме этих двух.
    Таким образом мы получим невыделенные пункты меню (по стилям) на всех страницах каталога, и выделенные на двух указанных.
     
  8. alexandr.datsko

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

    Регистр.:
    20 июн 2012
    Сообщения:
    45
    Симпатии:
    7
    можно сделать через PHP сравнивая $_SERSER['QUERY_STRING'] c '/' с зависимости от этого давать другой класс тегу бади, т.е.
    <body class="<?php echo $_SERVER['QUERY_STRING']=='/'?'home':'';?>">
    потом в CSS файле прописать с учетом этого и учетом Itemid пункта, т.к. у него будет класс item-xx
     
  9. wolfzp

    wolfzp Постоялец

    Регистр.:
    9 апр 2013
    Сообщения:
    110
    Симпатии:
    25
    Как и предполагал, описанный мной же cпособ не совсем работает, поэтому я решил его немного усовершенствовать. Суть осталась та же - вывод двух модулей с меню на "главной" и "не главной", только в шаблоне нужно указать какой и когда выводить
    <?php if (JURI::current()== JURI::base()){?>
    <jdoc:include type="modules" name="module_for_menu1" />
    <?php }

    else {?>
    <jdoc:include type="modules" name="module_for_menu2" />
    <?php }?>
     
  10. zavrus

    zavrus

    Регистр.:
    29 май 2009
    Сообщения:
    174
    Симпатии:
    78
    так не понял немного .. а зачем это делать если тебе нужны отдельные категории то оптимальнее создать пункт меню с виртом и привязать к нему подкатегории .. эту вложенность скрыть и создать еще одно меню в котором с помощью псевдонима пункта меню привязываем категории .. если тебе нужны прымые алиасы используем плагин Direct Alias
     
    magikarty нравится это.