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

jesus

  • Захожу иногда
  • 96
  • 13 / 0
  • дубій з нами
Друзья, такая тема. Есть хороший такой шаблон http://demo.joomshaper.com/2018/helixultimate/, как blank template для простых проектов вполне себе норм. Так вот, в этом шаблоне, как и во многих современных есть mega-menu, а в этом меню есть такое поле Badge — это значит любой текст из этого поля выведется рядом с названием пункта меню, в виде значка типа NEW или HOT.

Если создать пункт меню Корзина и в поле Badge вывести количество товара в корзине, то получится просто отличное универсальное решение по выводу количества товаров над значком корзины.
Вроде количество товара в корзине выводится как-то так:
Код
<?php echo count($cart->products)?>
Но как вывести количество товара в Badge динамически? Чувствую, что решение на поверхности, но знаний не хватает.
« Последнее редактирование: 07.06.2019, 02:36:06 от jesus »
Спасибо за freeware
*

dmitry_stas

  • Легенда
  • 12962
  • 1217 / 8
но что то пошло не так... :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

jesus

  • Захожу иногда
  • 96
  • 13 / 0
  • дубій з нами
но что то пошло не так... :)
:laugh: свет выключили
Спасибо за freeware
*

effrit

  • Легенда
  • 9588
  • 1060 / 13
  • effrit.com
как blank template для простых проектов вполне себе норм
сравнение на троечку, ибо встроенный билдер - это что-то в противоположной стороне от "blank"  ;D

что до темы - выводите корзину стандартным модулем где-нибудь на странице, а потом забирайте количество из неё через JS и вставляйте, куда нужно.
1-2 строки на jQuery
сам модуль можно невидимым сделать.

но вообще стараются корзину в шапке держать, чтоб глаза мозолила, так что не знаю, на сколько такое её измельчение целесообразно
*

jesus

  • Захожу иногда
  • 96
  • 13 / 0
  • дубій з нами
сравнение на троечку, ибо встроенный билдер - это что-то в противоположной стороне от "blank"  ;D
За-то конечному потребителю очень даже удобно потом пользоваться.
Цитировать
что до темы - выводите корзину стандартным модулем где-нибудь на странице, а потом забирайте количество из неё через JS и вставляйте, куда нужно.
1-2 строки на jQuery
сам модуль можно невидимым сделать.
Суть ясна, благодарю за совет!
Цитировать
но вообще стараются корзину в шапке держать, чтоб глаза мозолила, так что не знаю, на сколько такое её измельчение целесообразно
Так вот, как раз, в самой что ни на есть шапке эта корзина и будет, в главном меню, а если ещё и sticky-меню, так вообще шикарно.
Спасибо за freeware
*

Ragnarok

  • Осваиваюсь на форуме
  • 40
  • 1 / 0
Подскажите, пожалуйста, а можно ли как-то забрать значение количества из корзины и выводить после рендеринга страницы через AJAX? Если да, то куда "копать"?

З.Ы: всех с Днем Веб-мастера!  *DRINK*
*

dmitry_stas

  • Легенда
  • 12962
  • 1217 / 8
забрать значение количества из корзины и выводить после рендеринга страницы через AJAX?
так а вам после рендеринга страницы, или через AJAX? что надо то?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Ragnarok

  • Осваиваюсь на форуме
  • 40
  • 1 / 0
так а вам после рендеринга страницы, или через AJAX? что надо то?
Извиняюсь, не так описал задачу, наверное.
Ситуация следующая:
- количество товара в корзине кешируется
- на сколько я понимаю, если количество товара в корзине будет выводиться через AJAX, то оно кешироваться не будет. Верно?
- как можно программно вывести количество товара через AJAX? И можно ли? Взять, например, текущее количество товара из БД и вывести в определенном месте шаблона
*

dmitry_stas

  • Легенда
  • 12962
  • 1217 / 8
теперь понятнее. это все можно сделать, но это нужно на стороне сервера обработчик писать, плагин например, который будет отдавать нужные вам данные. ну и плюс сам JavaScript, который эти данные после загрузки запросит, а потом расфасует по нужным полкам.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Technic

  • Захожу иногда
  • 194
  • 7 / 0
а можно вопрос?
Зачем такие заморочки?
поставьте модуль корзины в позицию рядом с меню
стилями все поправьте и никаких заморочек
*

Ragnarok

  • Осваиваюсь на форуме
  • 40
  • 1 / 0
теперь понятнее. это все можно сделать, но это нужно на стороне сервера обработчик писать, плагин например, который будет отдавать нужные вам данные. ну и плюс сам JavaScript, который эти данные после загрузки запросит, а потом расфасует по нужным полкам.
Спасибо большое!
*

jesus

  • Захожу иногда
  • 96
  • 13 / 0
  • дубій з нами
Совместно с уважаемым effrit было найдено решение задачи из первого поста. Решение конкретно для фреймворка Helix Ultimate, но может пригодится и в других случаях.
1. Делаем пункт меню типа JoomSopping > Корзина
2. В настройках пункта меню, во вкладке Mega Menu, в поле Badge вписать любую цифру, кроме 0, иначе сам бэйжд не отобразиться.
3. Указать для этого пункта меню уникальный класс (CSS-класс ссылки). Я поставил cart_qt
4. Публикуем модуль корзины на всех страницах, чтобы брать из него количество товаров. Модуль скрываем если нужно, например display:none;
5. Вот такой код нужно вставить в поле пользовательского скрипта или в файл скриптов:
Код
jQuery(function(){
var qt=parseInt(jQuery('#jshop_quantity_products').html());
if(!qt) qt=0;
jQuery('.cart_qt .sp-menu-badge-right').html(qt);
});
Должно заработать как-то так:

С прогрессивным кэшированием не заработало.
Спасибо за freeware
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работает меню-аккордеон c JoomShopping

Автор surho

Ответов: 5
Просмотров: 77
Последний ответ 20.09.2019, 16:07:18
от surho
[Решено] Вес товара в граммах

Автор rakushkin

Ответов: 9
Просмотров: 3060
Последний ответ 19.09.2019, 06:12:59
от sterveo
Ошибка 500 - Макет registermail не найден - при регистрации [Решено]

Автор jesus

Ответов: 1
Просмотров: 1353
Последний ответ 18.09.2019, 20:34:19
от artem kozirev
Вывести все товары категории в карточке товара

Автор v-v

Ответов: 60
Просмотров: 6751
Последний ответ 18.09.2019, 11:33:02
от tomclancys
Нестандартное отображение атрибутов в корзине

Автор Dolphin4ik_1

Ответов: 1
Просмотров: 59
Последний ответ 10.09.2019, 14:03:09
от kit2m2