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


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. Это очень полезно для системы тегов в онлайн магазине.

 

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

  • Z

    Спасибо, действительно проще создать отдельно.

    Читать далее
  • Но проблема в том, что эта старая цена "дублируется" в плесхолдер "Дополнительных услуг" - [[+addit_data]].

    Можно не использовать [[+addit_data]], а выводить параметры по-отдельности.

    Цитата из документации:

    [[+shk_любой доп.параметр]] - любой доп. параметр, выбранный при добавлении товара в корзину (из [[+addit_data]]), например [[+shk_param1]].
    Если параметры сделаны в виде чекбоксов, то чтобы вывести отдельно каждый из них, нужно добавлять индекс (номер от нуля) для параметров следующих за первым.
    Пример: [[+shk_param1]], [[+shk_param1_1]], [[+shk_param1_2]] ...
    [[+shk_любой доп.параметр_price]] - цена доп.параметра. Пример: [[+shk_param1_price]].

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

    Доброго времени суток. Не могу разобраться, как передать данные migx-поля в корзину в плейсхолдер без "дублирования" в [[+addit_data]]
    Суть в чем: У меня есть 2 цены у товара (со скидкой и без скидки) Форма для отправки в корзину:

    <form action="[[~[[*resource_id]]? &scheme=`abs`]][[*alias]].html" method="post"> <input type="hidden" name="shk-id" value="[[*id]]" /> <input type="hidden" name="shk-name" value="[[*pagetitle]]" /> <input type="hidden" name="price_old__[[*id]]__add" value="[[*price_old]]" /> <input type="hidden" name="shk-count" value="1" /> <div class="product-price"> Цена: <span class="shk-price">[[!*price:shk_curr_rate:num_format]]</span> Старая цена - <span class="shk-price-old">[[+price_old]]</span> [[!+shk_currency]] </div> <div class="padding-lr-30"> <h5>Дополнительные услуги</h5> [[*param1]] </div> <div class="product-price"> <button class="btn btn-lg btn-primary" type="submit" class="shk-but">В корзину</button> </div> </form>

    Данные со "старой ценой" в корзину попадают нормально и выводится в нужном месте в плейсхолдере:
    [[+shk_price_old]]
    Но проблема в том, что эта старая цена "дублируется" в плесхолдер "Дополнительных услуг" - [[+addit_data]]. Как сделать чтобы старая цена не выводилась в [[+addit_data]]? Или может я как то не правильно передаю MIGX-параметр в корзину ? Заранее спасибо.

    Читать далее
  • Фотографии, как я понял, это второй вопрос. Я по нему пока ничего не отвечал и не просил информации. Это не отменяет того, что в вашем конфиге есть ошибка, о которой я писал выше. Не нужно задавать разные вопросы в одной теме, чтобы не было путаницы.
    http://forum.modx-shopkeeper.ru/topic/15/рекомендации-по-оформлению-темы-с-вопросом

    Читать далее