MiniShop2. Поиск по тэгам

А как можно сделать тэги ссылками? чтобы каждый тэг выводился ссылкой, нажимаешь на один — и по нему идет поиск и выводятся все товары которые с данным тэгом
Андрей
10 марта 2013, 20:58
modx.pro
3 371
0

Комментарии: 7

Андрей
20 марта 2013, 16:25
0
Нельзя, или bezumkin.ru/modx/minishop/manuals/tags.html тоже применимо к miniShop 2?
Или прикрутить может быть getResourcesTag можно? Кто-то пробовал?)
    Fedor
    20 марта 2013, 17:39
    0
    Поддерживаю вопрос… поиск по TV и параметрам интересен…
      Олег
      17 ноября 2013, 15:50
      0
      Рекомендаций нет?
        Василий Наумкин
        17 ноября 2013, 16:29
        0
        bezumkin.ru/modx/minishop2/admin/742/

        Просто ищи по таблице msProductOption.
          Олег
          18 ноября 2013, 14:54
          0
          По идее надо вот так
          [[!msProducts? &tpl=`MSCatalogItem` &limit=`0` &depth=`10` &sortby=`Data.price` &sortdir=`DESC` &showZeroPrice=`0` &parents=`0` &showLog=`1` &where=`{«Data.tags:LIKE»:"%tagname%"}`]]
          Total rows: 0
          tags хранятся в базе вот так [" \u0447\u0430\u0441\u044b","\u043a\u043b\u044e\u0447\u043d\u0438\u0446\u0430","\u044d\u0440\u043c\u0438\u0442\u0430\u0436","\u0434\u0435\u043a\u043e\u0440","\u043f\u043e\u0434\u0430\u0440\u043e\u043a","\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430","\u0442\u0435\u0441\u0442"]
          Но имя декодируется верно, даже если делать &where в таком виде ('\u043a\u043b\u044e\u0447\u043d\u0438\u0446\u0430').
          Не подскажешь куда копать?
            Василий Наумкин
            18 ноября 2013, 14:56
            0
            Еще раз: работать нужно с msProductOption.

            Это быстрее и удобнее, нужно просто приджойнить эту таблицу к msProducts.
        Сергей
        17 ноября 2013, 16:21
        0
        Как я сделал тэги ссылкой(если криво, то чур не пинать):
        1. Чанк вывода тэгов:
        <a href="[[~ID]]?tag=[[+value]]">[[+value]]</a>
        2.Сделал копию msProduct и немного подправил:
        Добавляем опции для выборки в блоке $leftJoin:
        array('class' => 'msProductOption', 'alias' => 'Option', 'on' => '`msProduct`.`id`=`Option`.`product_id`'),
        И добавляем условие в $where (вот тут еще я сделал чтоб ничего не выводилось если не задан тэг):
        if(isset($_GET['tag']) && preg_match("/^[\w\d ]+$/",$_GET['tag'])) {
            $where['Option.key'] = 'tags';
            $where['Option.value'] = $_GET['tag'];
        } else {
            return "Не указан тэг";
        }
        Вот и все, осталось вывести этот сниппет и указать ссылку на эту страницу в ссылке из первого пункта. Думаю у знающих людей это сделано получше, но мне пока хватает и такого, хотя буду рад если предложат вариант получше.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          7