Похожие товары
Есть 30 товаров, два производителя по 15 товаров. Есть 5 групп похожих товаров по 5 штук в группе.
Есть желание добавить на страницу товара блок «похожие товары». Как бы это все сделать попроще?
1) использовать теги товаров или указать группе похожих товаров например tv.similar=1
2) вызвать на странице товара все подходящие под условие товары кроме текущего.
Может кто подсказать где бы подсмотреть примеры или «ткнуть» что почитать?
Есть желание добавить на страницу товара блок «похожие товары». Как бы это все сделать попроще?
1) использовать теги товаров или указать группе похожих товаров например tv.similar=1
2) вызвать на странице товара все подходящие под условие товары кроме текущего.
Может кто подсказать где бы подсмотреть примеры или «ткнуть» что почитать?
Комментарии: 12
1. Определить критерии «похожести». Например, один производитель и цена +-10% от текущей.
2. Написать сниппет, который будет искать по этим критериям товары через xPDO и возвращать список id через запятую.
3. Чтобы не выводился текущий товар, сниппет должен добавлять -[[*id]] к списку.
4. Указать этот сниппет в параметр resources для msGetResources
Это все можно скомбинировать и с тегами.
2. Написать сниппет, который будет искать по этим критериям товары через xPDO и возвращать список id через запятую.
3. Чтобы не выводился текущий товар, сниппет должен добавлять -[[*id]] к списку.
4. Указать этот сниппет в параметр resources для msGetResources
Это все можно скомбинировать и с тегами.
В какой раз со мной такое :) прочитал внимательно manuals/tags.html и… последний пример… он появился недавно или я раньше его не замечал?
За подсказки спасибо :) но "-[[*id]] к списку" пока для меня «магия». Сделал так
[[+pagetitle:is=`[[*pagetitle]]`:then=` `:else=`
[[+img:isnot=``:then=``:else=`nophoto`]]
[[+pagetitle]]
Цена: [[+price:default=`0`]] [[+currency:default=`руб.`]]
`]]
За подсказки спасибо :) но "-[[*id]] к списку" пока для меня «магия». Сделал так
[[+pagetitle:is=`[[*pagetitle]]`:then=` `:else=`
[[+img:isnot=``:then=``:else=`nophoto`]]
[[+pagetitle]]
Цена: [[+price:default=`0`]] [[+currency:default=`руб.`]]
`]]
-[[*id]] это просто id текущей страницы (товара) со знаком «минус».
Если задавать айдишки с минусом в getResources, то он исключит их из выдачи.
Никакой магии.
Если задавать айдишки с минусом в getResources, то он исключит их из выдачи.
Никакой магии.
Я думал, что -[[*id]] прописывается в коде сниппета.
Спасибо за пояснение.
Спасибо за пояснение.
задумался, что производительней?
[[+pagetitle:is=`[[*pagetitle]]`:then=` `:else=`
или
msGetResources -[[*id]]
[[+pagetitle:is=`[[*pagetitle]]`:then=` `:else=`
или
msGetResources -[[*id]]
Конечно минус. Этот товар просто не выберется из БД.
А при пагинации, если исключать товары такой проверкой, то у вас на одной странице будет на 1 пункт меньше. Это некрасиво.
А при пагинации, если исключать товары такой проверкой, то у вас на одной странице будет на 1 пункт меньше. Это некрасиво.
Ловите «спасибо» :)
Если это от вас пришла сумма на Яндекс.Деньги, то всегда пожалуйста!
Я делал через теги, т.е. забиваю теги, потом сниппетов выбираю товары и вывожу списком
Можно использовать getRelated, вывожу похожие товары им, в параметрах-похожести указываю pagetitle и tv-параметры, в чанке getRelated вызываю msGetGoodsPlaceholders и вывожу цену и прочие параметры…
Как я понял из описания getRelated выбирает похожий контент, мне же надо было жестко задать какой из 30 товаров на какой другой похож.
Если вы жестко будете задавать руками, какой товар на какой похож — зачем вам тогда, что то писать дополнительно — вбивайте в тв id похожих товаров и выводите ресурсы по указанным id, но при заполнении интернет магазина на первой же сотне вы опухните от ручного перебора похожих товаров.
Для меня эта задача в принципе тоже актуальна.
Так то getRelated будит при изменении или добавлении похожих товаров выводить все новые и новые и контент страницы будет меняться.
Что бы этого не происходило можно проверять заполнена ли тв похожих товаров, если нет заполнять ее с помощью getrelated.
като так мыслю
Для меня эта задача в принципе тоже актуальна.
Так то getRelated будит при изменении или добавлении похожих товаров выводить все новые и новые и контент страницы будет меняться.
Что бы этого не происходило можно проверять заполнена ли тв похожих товаров, если нет заполнять ее с помощью getrelated.
като так мыслю
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.