Последние темы


TagManager, как динамически передавать where?

  • Добрый день,
    у меня есть таблица Migx с ресурсами где к каталогу будут хитрые фильтрации.
    Фильтр указывается в поле where.

    Например, хочу создать страницу, где будут только товары с названием ELISA из каталога и .п., заполняю поле where:

    pagetitle:LIKE:AND":"%ELISA%
    

    Подскажите, пожалуйста, как можно передать этот параметр в tmCatalog, чтобы продолжили работать фильтры и сортировки?

    Я уже всю голову сломал((

    Ниже что накопал, может наведет на мысли кого:

    1. Конструкция
    [[!tmCatalog?&where=`[[*where]]`]] 
    

    Работать не будет, т.к. при ajax фильтрации вызывается ajax_resources.php игнорирующий все параметры и берущий все из наборы параметров, куда переменную не загонишь.

    1. Через get невозможно, т.к. при сортировке или других действиях через js передаются только стандартные переменные формы типа sortby, остальное затирается.

    2. От отчаяния хотел вшить в код tmCatalog такую конструкцию

    $sorting['where']= $modx->resource->get('where');
    

    Это срабатывает, НО, только до сортировки или фильтрации, поскольку при ajax фильтрации запускается тот самый злосчастный ajax_resources.php, который заново создает ресурс каталога, родительскую категорию, а родительская категория - это основной каталог, не ресурс Migx и там нет поля where.

    Ниже код ajax_resources.php
    ajax_resources.php

    В общем понятия не имею, что с этим делать. Беда, что в наборы параметров невозможно передавать динамические переменные, а tmCatalog берет все оттуда. В итоге вся гибкость MODx теряется.

  • @slaad в общем пришлось менять код tmCatalog и делать ссылку в формате:/?this_id=1&filterField=tagfilter, чтобы передавать гет параметры.

    Был бы благодарен Андрею, если бы в tagManager была добавлена возможность передавать ТВшку с содержанием фильтра where для GetProducts и чтобы при этом продолжали работать фильтрыTagManager. Это очень полезно для системы тегов в онлайн магазине.

 

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

  • C

    Если вдруг кто-то озадачится.
    В файле updateorderstatus.class.php

    //Формируем письмо $orderOutputData = $shopCart->getOrderData( $order_id ); $chunkArr = array( 'orderID' => $order_data['id'], 'orderDate' => $order_data['date'], 'statusName' => $status_data['label'], 'orderCurrency' => $shopCart->config['currency'], 'orderOutputData' => $orderOutputData, //добавляем строку 'status' => $status_data['color'], );

    Читать далее
  • Участник @Vladislava написал в Проблема с giftCards:

    @Andchir Спасибо большое! А не скажете ещё, где можно скачать Compare? Тоже не могу найти.

    Сравнение товаров
    https://e-store.shopkerx.net/katalog/modx_extras/compare

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

    @Andchir Спасибо большое! А не скажете ещё, где можно скачать Compare? Тоже не могу найти.

    Читать далее
  • Дополнение "Paykeeper2 - онлайн-оплата и электронные товары" теперь стало бесплатным.

    0_1574706584028_Chash Register.png

    Сниппет для продажи электронных товаров, а так же оплаты заказов в интернет-магазине на основе Shopkeeper 3.x.
    Компонент для управления электронными товарами (Фронт-енд написан на Angular2 + TypeScript).
    Используется библиотека Omnipay. Эта библиотека позволяет делать единый API для разных платежных систем.
    Сайт проекта: http://omnipay.thephpleague.com/

    В состав входят готовые обработчики для платежных систем:
    Yandex.Kassa (агрегатор), WebMoney, PayPal.

    Скачать можно здесь:
    https://e-store.shopkerx.net/katalog/modx_extras/onlayn-oplata-dlya-modx-paykeeper2

    Читать далее