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


Записки велосипедиста №1. Рекомендуемые товары.

  • Решил начать небольшую рубрику, где будут простые решения некоторых задач. Сегодня будет вывод рекомендуемых товаров. На этом форуме уже описали решение через collections, но, как мне кажется, оно избыточно тяжёлое (ставить коллекции ради одной задачу - идея не лучшая, да и куда проще заполнять все параметры в одном месте). Поэтому вот вам моё.

    1. Создаём дополнительное поле "recomend", назначаем его шаблону "Товар"
    2. Выбираем тип ввода "список (множественный выбор)"
      В "возможные значения" вставляем код (3 - шаблон "товар")
    @SELECT `pagetitle`, `id` FROM `[[+PREFIX]]site_content` WHERE `template` = 3
    
    1. В "параметры вывода" выбираем "разделитель" и указываем "," без кавычек.
    2. После этого в дополнительных полях товара мы можем выбирать ему рекомендуемые (из множественного списка). Дело за малым - вывести это дело в карточке товара. Делаем это так:
    [[*recomend:isnot=``:then=`<h3>Рекомендуемые товары</h3>
             [[!getProducts?
                    &resources=`[[*recomend]]`
                    &fromParentList=`pagetitle`
                    &processTVs=`1`
                    &processTVList=`params`
                    &includeTVs=`1`
                    &includeTVList=`image,price,oldprice,tags,params`
                    &tpl=`shk_product_recomend`
            ]]
    `]]
    

    т.е. проверяем, не пустое ли это значение, а после - выводим через getProducts, передавая в параметр "resources" список рекомендуемых товаров.

    Тааа-дааа-м! Мы великолепны.

  • Хорошее решение. Только это не велосипед, а обычное использование гибкости MODX 🙂

  • @Andchir спасибо за оценку! 😃 Название - юмору ради. Если будет время, то буду регулярно под ним постить.

  • Спасибо за интересное решение рекомендуемые товары для интернет магазина .

  • Спасибо, отлично работает. До этого я реализовал через pdoPage и у меня был косяк - снятые с публикации товары отображались в рекомендуемых, а здесь все чОтко)!

  • @arkadyexp рад что помог! 😃

  • Еще момент

    @SELECT `pagetitle`, `id` FROM `[[+PREFIX]]site_content` WHERE `template` = 3 AND `published` = 1 AND `deleted` = 0 
    

    чтобы не выводились снятые с публикации и я так понял удаленные ресурсы

 

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

  • 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

    Читать далее