Помощь Добавление всех комбинаций в корзину PS 1.7

Тема в разделе "PrestaShop", создана пользователем Absolute, 27 ноя 2018.

Информация :
Приветствую гость, обрати внимание! Темы которые закреплены в разделах, в скором времени будут откреплены. Правила раздела PrestaShop

(Не актуальные темы) Каталоги:Модули PrestaShop 1.7Модули PrestaShop 1.5 - 1.6Шаблоны PrestaShop 1.7Шаблоны PrestaShop 1.5 - 1.6
(Не актуальные темы) Поиск / Запросы:Модули PrestaShop 1.7Модули PrestaShop 1.5 - 1.6Шаблоны PrestaShop 1.7Шаблоны PrestaShop 1.5 - 1.6
Полезная информация:Поддержка и помощь c PrestaShopУбираем ПрестаТраст, стучалки и прочую рекламуСовместные покупки модулей и шаблоновПеревод Prestashop и модулей
Модераторы: trace
  1. Absolute

    Absolute Крокодил ;)

    Регистр.:
    9 авг 2009
    Сообщения:
    514
    Симпатии:
    368
    Может быть кто-нибудь сталкивался. Нужно сделать чекбокс напротив группы атрибутов, чтобы при его выборе в корзину улетели сразу все комбинации данной группы.
    Типа ...

    Размер:
    - M
    - XL
    - XXL


    [​IMG] Выбрать весь размерный ряд.
     
  2. _sashok

    _sashok PrestaShop Expert

    Регистр.:
    15 июл 2011
    Сообщения:
    1.937
    Симпатии:
    3.173
    когда-то на 1.6 решали похожую задачу так:
    https://www.odessaopt.com/platya-sarafany-tuniki/9681-plate-gipyur-zhenskoe-model-20189681.html

    upload_2018-11-27_22-54-17.png
     
    NightHunter и Absolute нравится это.
  3. Absolute

    Absolute Крокодил ;)

    Регистр.:
    9 авг 2009
    Сообщения:
    514
    Симпатии:
    368
    Attribute Grid - классный модуль, жаль в паблике для 1.7 нет его.
    Я вроде как сделал, но не по группам, а просто все комбинации - для меня не критично. Если кому вдруг понадобится...
    /themes/alysum/templates/catalog/product.tpl
    после:
    Код:
                      {block name='product_variants'}
                        {include file='catalog/_partials/product-variants.tpl'}
                      {/block}
    Добавить:
    Код:
                      {if $product.id_product_attribute}
                         <label>Выбрать все  <input type="checkbox" name="all"> </label>
                    {/if}
    
    /controllers/front/CartController.php
    Метод Product::getProductAttributesIds возвращает id всех доступных атрибутов, processChangeProductInCart - обновляет инфу
    функция updateCart()
    вместо:
    Код:
          if (Tools::getIsset('add') || Tools::getIsset('update')) {
                    $this->processChangeProductInCart();
                } 
    пишем:
    Код:
                if (Tools::getIsset('add') || Tools::getIsset('update')) {
                     if(Tools::getValue('all')){
                        $arr = Product::getProductAttributesIds($this->id_product);
                        foreach($arr as $key => $val){
                            $this->processChangeProductInCart($val['id_product_attribute']);
                        }
                    } else {
                        $this->processChangeProductInCart();
                    }
                } 
    Функция processChangeProductInCart
    было:
    Код:
    processChangeProductInCart()
    стало:
    Код:
    processChangeProductInCart($id_product_attr = false)
    было:
    Код:
            if (Tools::getIsset('group')) {
                $this->id_product_attribute = (int)Product::getIdProductAttributesByIdAttributes(
                    $this->id_product,
                    Tools::getValue('group')
                );
            }
    стало:
    Код:
            if (Tools::getIsset('group') && !$id_product_attr) {
                $this->id_product_attribute = (int)Product::getIdProductAttributesByIdAttributes(
                    $this->id_product,
                    Tools::getValue('group')
                );
            } elseif (Tools::getValue('all')) {
                $this->id_product_attribute = $id_product_attr;
            }
    В общем добавит каждую комбинацию в корзину указанное в поле "количество" раз.
     
    Последнее редактирование: 28 ноя 2018
    Belena27089 и _sashok нравится это.
  4. p2rcoder

    p2rcoder

    Регистр.:
    16 июл 2012
    Сообщения:
    321
    Симпатии:
    146
    savvato нравится это.
  5. Absolute

    Absolute Крокодил ;)

    Регистр.:
    9 авг 2009
    Сообщения:
    514
    Симпатии:
    368
    MyPresta знают nulled :D

    [​IMG]
    А по теме - этот модуль очень похож на Attribute Grid от Presta Changeo, который приводил выше _sashok. На текущий момент меня устраивает моя реализация, тестировал, скопом комбинации улетают в корзину.
     
    _sashok нравится это.
  6. p2rcoder

    p2rcoder

    Регистр.:
    16 июл 2012
    Сообщения:
    321
    Симпатии:
    146
    да я как-то никогда их не видел, много интересных модулей у них нашел на сайте