Bagar

Скрытие/отображение категорий главного меню по id

Рекомендуемые сообщения

Bagar    0

Доброго времени суток всем.

 

Встречал решения для скрытия категорий по id из бокового модуля (ссылка), но к сожалению данное решение не помогло. Прошу взглянуть на тз и помочь кто чем сможет.

 

Задача: скрыть несколько определенных категорий по id в главном меню. Отобразить ранее скрытые категории в другом меню по id. 

 

Идея: дублирование главного меню сразу ниже первого с отображением некоторых категорий. Для простейшего разделения категорий по группам.

 

Причина: слишком много категорий в главном меню.

 

Альтернативные решения

 - группировать категории в подкатегории - не подходит в связи с концепцией ИМ

 - провести манипуляции css и вместить все категории в одну строку - не подходит, товары сильно разнятся и нет желания все помещать в один список.

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

 

Мои попытки реализации (на примере скрытия одной категории - id=24):

<?php if ($categories) { ?>
<div id="menu">
  <ul>
    <?php foreach ($categories as $category) { ?>
    <?php if ($category['category_id'] <> 24) { ?>
    <li><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
      <?php if ($category['children']) { ?>
      <div>
        <?php for ($i = 0; $i < count($category['children']);) { ?>
        <ul>
          <?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
          <?php for (; $i < $j; $i++) { ?>
          <?php if (isset($category['children'][$i])) { ?>
          <li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
          <?php } ?>
          <?php } ?>
        </ul>
        <?php } ?>
      </div>
      <?php } ?>
    </li>
    <?php } ?>
    <?php } ?>
  </ul>
</div>
<?php } ?>

К сожалению, так же пока не решил как выводить ранее скрытые категории в дублированном меню.

 

Пожалуйста, помогите с решением и посоветуйте, будет ли такой вариант работать (в техническом плане).

 

Заранее благодарю!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
zaumnik    0

решение ваших проблем без геммороя с id категорий.... + уменьшение запросов к бд

 

https://opencartforum.com/files/file/1112-%D0%BC%D0%B5%D0%BD%D1%8E-%D0%BA%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D0%B9-pro/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Bagar    0

решение ваших проблем без геммороя с id категорий.... + уменьшение запросов к бд

 

https://opencartforum.com/files/file/1112-%D0%BC%D0%B5%D0%BD%D1%8E-%D0%BA%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D0%B9-pro/

 

Спасибо большое! Модуль действительно отличный, но демо не дает полного понимания решит ли данный модуль мою задачу. 

Но предельно простое решение пришло ножу ночью: создаем категории, в админке отключаем "Показывать в главном меню", и по URL выводим обычную ссылку на категорию в другом меню. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
zaumnik    0

Спасибо большое! Модуль действительно отличный, но демо не дает полного понимания решит ли данный модуль мою задачу. 

Но предельно простое решение пришло ножу ночью: создаем категории, в админке отключаем "Показывать в главном меню", и по URL выводим обычную ссылку на категорию в другом меню. 

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

 

 

ПС: я не автор модуля, просто активно его использую в проектах. доволен на 101%

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Bagar    0

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

 

 

ПС: я не автор модуля, просто активно его использую в проектах. доволен на 101%

 

Не могу не согласиться. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От ReManager

      Скачать/Купить дополнение


      Дополнительное описание категорий и товаров
      Дополнительное описание для товаров и категорий. Делал для себя. Не заменяет файлы. OCMOD. Мод для тех, кто ручками допиливает шаблон и разместит вывод доп.описаний в нужном месте шаблона. Добавляет дополнительные 2 поля в базу. Работает без ошибок ТОЛЬКО на ocStore 2.3.0.2.*. На остальных версиях требуются мелкие правки.
       
      Что мод делает:
      1. С помощью мода можно вывести дополнительное описание в категориях в файле catalog/view/theme/ВАША_ТЕМА/template/product/category.tpl добавить:
      - для вывода доп.описания продукта в необходимом месте блока формирования карточки продукта
      <?php if ($product['description_dop']) { ?><div class="dop-opisanie"><?php echo $product['description_dop']; ?></div><?php } ?> - для вывода доп.описания категории в необходимом месте
      <?php if ($description_dop) { ?><div class="dop-opisanie"><?php echo $description_dop; ?></div><?php } ?> 2. Для вывода доп.описания на странице товара в файле catalog/view/theme/ВАША_ТЕМА/template/product/product.tpl добавить в нужном месте:
      <?php if ($description_dop) { ?><div class="dop-opisanie"><?php echo $description_dop; ?></div><?php } ?> 3. Для вывода доп.описания в модуле "Рекомендуемые" товара в файле catalog/view/theme/ВАША_ТЕМА/template/extension/module/featured.tpl добавить в нужном месте:
      <?php if ($product['description_dop']) { ?><div class="dop-opisanie"><?php echo $product['description_dop']; ?></div><?php } ?> 4. Для вывода доп.описания в модуле "Последние" товарах в файле catalog/view/theme/ВАША_ТЕМА/template/extension/module/latest.tpl добавить в нужном месте:
      <?php if ($product['description_dop']) { ?><div class="dop-opisanie"><?php echo $product['description_dop']; ?></div><?php } ?>  - <div class="dop-opisanie"> - это так, просто для понимания, что можно оформить своими стилями;
      - можно просто выводить только через строку кода с echo; без if.
       
      Как пользоваться с версии 1.2.1:
      .zip - для тех кто ставит в первые.
      .xml - для тех кто ставил уже предыдущие версии и хочет обновиться.
       
      v.1.2.0.0.1 - Доп.описание категории отсутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара нет редактора.
      v.1.2.0.1.1 - Доп.описание категории отсутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара есть редактор.
      v.1.2.1.0.1 - Доп.описание категории присутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара нет редактора.
      v.1.2.1.1.1 - Доп.описание категории присутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара есть редактор.
       
      В версиях, где редактор для Доп.описание товаров текст можно форматировать, т.е добавлять ссылки, картинки, стили и т.п(как полное описание). Кстати, где нет редактора в Доп.описании, то в шаблоне все html-тэги удаляются. Не стоит ограничения по длине доп.описания категории и товара!
       
      Проверял на чистом сайте. Возмоооожно, будут конфликты с какими-нибудь модами. Но это не сложно решить, наверно.
       
      Установка мода:
      1. Установить через "Установка дополнений".
      2. Обновить кэш в "Менеджер дополнений".
       
      Обновление мода:
      Скачивайте .xml нужной версии, удаляйте модификатор, обновляйте кэш, ставьте новый .xml и опять обновляйте кэш.
       
      ВНИМАНИЕ:
      1. Я не программист, поэтому 100% работу на ваших сайтах с различными шаблонами гарантировать не могу. Если авторы шаблонов протестят мой мод и, при несовместимости частичной, покажут где-что подправить, то я сделаю версии и под их шаблоны.
      2. Работает пока только с редактором Summer Note.
       
      Демо с доп. описание категории, товаров, модулями Последние и Рекомендуемые.
       
      Донатики на пиво/сок/сигареты и печеньки можно присылать тут
      Добавил ReManager Добавлено 26.12.2016 Категория Прочее Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop  
    • От ReManager
      Дополнительное описание для товаров и категорий. Делал для себя. Не заменяет файлы. OCMOD. Мод для тех, кто ручками допиливает шаблон и разместит вывод доп.описаний в нужном месте шаблона. Добавляет дополнительные 2 поля в базу. Работает без ошибок ТОЛЬКО на ocStore 2.3.0.2.*. На остальных версиях требуются мелкие правки.
       
      Что мод делает:
      1. С помощью мода можно вывести дополнительное описание в категориях в файле catalog/view/theme/ВАША_ТЕМА/template/product/category.tpl добавить:
      - для вывода доп.описания продукта в необходимом месте блока формирования карточки продукта
      <?php if ($product['description_dop']) { ?><div class="dop-opisanie"><?php echo $product['description_dop']; ?></div><?php } ?> - для вывода доп.описания категории в необходимом месте
      <?php if ($description_dop) { ?><div class="dop-opisanie"><?php echo $description_dop; ?></div><?php } ?> 2. Для вывода доп.описания на странице товара в файле catalog/view/theme/ВАША_ТЕМА/template/product/product.tpl добавить в нужном месте:
      <?php if ($description_dop) { ?><div class="dop-opisanie"><?php echo $description_dop; ?></div><?php } ?> 3. Для вывода доп.описания в модуле "Рекомендуемые" товара в файле catalog/view/theme/ВАША_ТЕМА/template/extension/module/featured.tpl добавить в нужном месте:
      <?php if ($product['description_dop']) { ?><div class="dop-opisanie"><?php echo $product['description_dop']; ?></div><?php } ?> 4. Для вывода доп.описания в модуле "Последние" товарах в файле catalog/view/theme/ВАША_ТЕМА/template/extension/module/latest.tpl добавить в нужном месте:
      <?php if ($product['description_dop']) { ?><div class="dop-opisanie"><?php echo $product['description_dop']; ?></div><?php } ?>  - <div class="dop-opisanie"> - это так, просто для понимания, что можно оформить своими стилями;
      - можно просто выводить только через строку кода с echo; без if.
       
      Как пользоваться с версии 1.2.1:
      .zip - для тех кто ставит в первые.
      .xml - для тех кто ставил уже предыдущие версии и хочет обновиться.
       
      v.1.2.0.0.1 - Доп.описание категории отсутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара нет редактора.
      v.1.2.0.1.1 - Доп.описание категории отсутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара есть редактор.
      v.1.2.1.0.1 - Доп.описание категории присутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара нет редактора.
      v.1.2.1.1.1 - Доп.описание категории присутствует на страницах пагинации(2-я, 3-я страница каталога), у формы Доп.описания товара есть редактор.
       
      В версиях, где редактор для Доп.описание товаров текст можно форматировать, т.е добавлять ссылки, картинки, стили и т.п(как полное описание). Кстати, где нет редактора в Доп.описании, то в шаблоне все html-тэги удаляются. Не стоит ограничения по длине доп.описания категории и товара!
       
      Проверял на чистом сайте. Возмоооожно, будут конфликты с какими-нибудь модами. Но это не сложно решить, наверно.
       
      Установка мода:
      1. Установить через "Установка дополнений".
      2. Обновить кэш в "Менеджер дополнений".
       
      Обновление мода:
      Скачивайте .xml нужной версии, удаляйте модификатор, обновляйте кэш, ставьте новый .xml и опять обновляйте кэш.
       
      ВНИМАНИЕ:
      1. Я не программист, поэтому 100% работу на ваших сайтах с различными шаблонами гарантировать не могу. Если авторы шаблонов протестят мой мод и, при несовместимости частичной, покажут где-что подправить, то я сделаю версии и под их шаблоны.
      2. Работает пока только с редактором Summer Note.
       
      Демо с доп. описание категории, товаров, модулями Последние и Рекомендуемые.
       
      Донатики на пиво/сок/сигареты и печеньки можно присылать тут
    • От seolink
      Нужно решение проблемы дублирования категорий:
      Нужно добавить возможность аналогичную в товарах , когда мы можем выбрать для одного товара несколько категорий где он отображается.
       
      Тоесть в категориях добавить еще одно поле Показывать в Категориях и здесь мы выбираем в каких категориях мы хотим чтобы данная категория отображалась..
       
      ocStore 2.1.0.1
       
      Пример:
      Хорошо видно на сайте Розетка
      Категория Садовая мебель с одной и той же ссылкой размещена в Категориях
      1. Интернет-супермаркет №① - Дача, сад, огород - Садовая мебель и декор
      Здесь https://rozetka.com.ua/sadovaya-mebelj-i-dekor/c4627879/
      2. Интернет-супермаркет №① - Товары для дома - Мебель
      https://rozetka.com.ua/mebel/c152458/
       
       
    • От Shishkin68
      Помогите, пожалуйста! Бьюсь не один час, не могу, чтобы описание категории ( в нем таблица) полностью отображалась на странице, у меня показывает частично, и внизу надпись " показать все описание".

    • От s7r0ng
      Здравствуйте!
       
      Стоит задача:
      Скрыть группу покупателей "По умолчанию" из выпадающего списка при регистрации. И далее вместо нее по умолчание отобразить другую группу.
       
      Для скрытия робовал в public_html\admin\view\template\customer\customer_list.tpl везде менять атрибут selected на disabled:
      <?php if ($customer_group['customer_group_id'] == $filter_customer_group_id) { ?> <option value="<?php echo $customer_group['customer_group_id']; ?>" disabled="disabled"><?php echo $customer_group['name']; ?></option> но код страницы остается без изменений.
      Или править надо не в шаблоне?

      Версия OcStore 2.3
      Кто сталкивался с подобной задачей, подскажите Ваше решение.
      Спасибо!
       
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу