Новости

Интеграция Shopkeeper4 для MODX

  • Идет работа по созданию интеграции Shopkeeper4 для MODX.
    Следить и участвовать можно здесь:
    https://github.com/andchir/modx-shopkeeper4

    План:

    • Меню категорий
    • Хлебные крошки
    • Вывод товаров
    • Фильтрация товаров
    • Страница товара
    • Вывод фото товаров и галереи
    • Сортировка товаров и изменений шаблона вывода
    • Меню соседних категорий
    • Корзина товаров
    • Оформление заказа
    • Поиск товаров
    • Мультивалютность
    • Мультиязычность
    • Страница компонента в админке
    • Билдер пакета для MODX
    • Документация

    Обновления
    28.07.2019
    Вышла бета-версия дополнения для MODX: https://modx.com/extras/package/shopkeeper4integration
    Пока нет корзины товаров. Этот функционал будет сделан как отдельное дополнение для MODX.
    Документация: https://github.com/andchir/modx-shopkeeper4/wiki

  • Вышла бета-версия дополнения для MODX: https://modx.com/extras/package/shopkeeper4integration
    Пока нет корзины товаров. Этот функционал будет сделан как отдельное дополнение для MODX.
    Документация: https://github.com/andchir/modx-shopkeeper4/wiki

  • Установил себе локально это дополнение. Но пока не могу установить MongoDB. Пока не было времени разбираться как его установить))

    Пока нет корзины товаров. Этот функционал будет сделан как отдельное дополнение для MODX.

    Можно подробнее что значит отдельное дополнение? Оно тоже будет использовать MongoDB?

  • Но пока не могу установить MongoDB. Пока не было времени разбираться как его установить))

    MongoDB устанавливается примерно так же как MySQL. Рекомендую использовать такую штуку: http://devilbox.org/.
    Также для ознакомления и при разработке можно использовать бесплатный тариф на MongoDB Atlas https://www.mongodb.com/cloud/atlas

    Можно подробнее что значит отдельное дополнение? Оно тоже будет использовать MongoDB?

    Нет, корзина будет сохраняться в БД, но использоваться будет MySQL. Просто подумал, что корзину можно сделать более универсальной, т.к. по большому счету всё равно что в ней хранить. Это просто инструмент для временного хранения каких-то данных. Там можно будет использовать плагин для того, чтобы указать какие данные хранить. Поэтому она будет не только для Shopkeeper.

 

Последние комментарии

  • M

    @Andchir
    Да, в TM2 в админке фильтр age включен. Все данные из TV подтянулись, все норм.

    Читать далее
  • В компоненте в админке фильтры есть?

    Читать далее
  • M

    Ломаю голову над запуском Tagmanager2 на простом сайте с выводом обычных item-ов для последующей фильтрации. Делую все по инструкции. Запустил tmCatalog, все отображается:

    [[!tmCatalog? &cache=`1` &elementClass=`modSnippet` &element=`getProducts` &tpl=`filtr_tpl` &sortbyTV=`age` &sortdirTV=`ASC` &parents=`3` &limit=`0` &debug=`0` ]]

    Чанк вывода каждого itema имеет следующий вид:

    <div class="col-xl-4" style="padding-left: 5px; padding-right: 5px; float: left;"> <div class="post-02 post-02__style-02 js-post-effect"> <div class="post-02__media"> <a href="[[~[[+id]]]]"> [[getImageList? &tvname=`slider` &docid=`[[+id]]` &limit=`1` &tpl=`@CODE:<img src="[[+slide]]" alt="[[+alt]]" />` ]] </a></div> <div class="post-02__body"> <h2 class="post-02__title"><a href="[[~[[+id]]]]">[[!pdoField? &id=`[[+id]]` &field=`name`]]</a></h2> <div class="post-02__department">[[!pdoField? &id=`[[+id]]` &field=`seo_tag`]]</div> <div class="post-02__content"> <div class="post-02__description"> [[pdoField:ellipsis=`200`? &id=`[[+id]]` &field=`specification`]] <ul> <li><span class="primary-color">Age</span>[[!pdoField? &id=`[[+id]]` &field=`age`]]</li> <li><span class="primary-color">Dress Size</span>[[!pdoField? &id=`[[+id]]` &field=`dress_size`]]</li> <li><span class="primary-color">Height</span>[[!pdoField? &id=`[[+id]]` &field=`height`]] cm</li> <li><span class="primary-color">Weight</span>[[!pdoField? &id=`[[+id]]` &field=`weight`]] kg</li> </ul> </div> <a class="post-02__link" href="[[~[[+id]]]]">View detail</a> </div> </div> </div> </div>

    filter.js имеет следующий вид. Пока решил фильтровать только числовое значение age:

    config: { filters_cont: '#filters',//Селектор оберточного элемента блоков с фильтрами sortby: 'pagetitle',//Имя поля сортировки по умолчанию sortdir: 'asc',//Направление сортировки по умолчанию numeric: ['age'],//Имена доп. полей с числовыми значениями multitags: [''],//Имена доп. полей с множественными значениями guard_key: '#',//Разделитель для множественных значений products_cont: '#products',//Селектор контейнера с выводом товаров filter_slider: 'div.range-slider',//Селектор слайдеров (ползунок для числовых значений) filter_slider_cont: 'div.filter_slider',//Селектор контейнера со слайдером pages_cont1: '#pages',//Селектор контейнера с постраничной навигацией pages_cont2: '#pages2',//Селектор второго контейнера с постраничной навигацией. Если нет, оставить пустым. active_page_selector: '.current',//селектор номера текущей страницы внутри контейнера (pages_cont) filters_type: 'default',//Тип фильтрации. Возможные значения: // default (показ числа товаров по каждому фильтру и блокирование пустых вариантов), // only_block (только блокирование пустых париантов), // none (не показывать цифры и не блокировать) filter_delay: 700,//Задержка до отправления запроса на сервер (сбрасывается после каждой отметки фильтра) price_field: 'price',//Название поля или TV цены товара multi_currency: true,//Мультивалютность включить / выключить (true/false) base_url: '/', ajax_url: 'assets/components/tag_manager2/connector_fe.php', ajax_loader: 'assets/components/tag_manager2/img/ajax-loader2.gif' },

    Все скрипты подключи вручную, все отображается внизу страницы, проверял.
    Сам tmFilters не отображается хоть убей. Вывожу:

    <div id="filters"> [[tmFilters? &filterNumericTpl=`tm2_filterNumericTpl` &filterNumericOuterTpl=`tm2_filterOuterTpl` &jsScript=`0` &jsMap=`1` &filtersType=`filters` ]] <form action="[[~[[*id]]]]" method="get"> <input type="hidden" name="page_id" value="[[*id]]" disabled="disabled" /> [[+filters]] <button id="clear" class="btn btn-danger btn-sm" type="button" onclick="tmFilters.resetFilters(); return false;">Сбросить</button> </form> </div>

    При выводе на странице выводится только кнопка. Фильтров как и не существует. Я понимаю, если бы кривенько вывелись чанки с фильтром и он не фильтровал, здесь же сам фильтр никак не хочет выводиться в бэкенд. Кто с таким сталкивался? Куда копать?

    Читать далее
  • @Andchir Спасибо!!!
    Все перепробовал кроме [[+note]]
    В письме со статусом отправлен, чтобы трек-номер отправлять покупателю. Все работает. Еще раз спасибо.

    Читать далее