Автор Тема: Добавить в корзину в категриях Prestashop 1.7  (Прочитано 153 раз)

09 Декабрь 2017, 14:01:08
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Есть ли возможность добавить к изображению товара в категории выбор вариантов (цвет, размер) + кнопка "В корзину"?
09 Декабрь 2017, 16:19:28
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 3136
  • Репутация: +74/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Цвет там показывает сразу. Добавить можно кнопку
<a class="button ajax_add_to_cart_button btn btn-default" href="{$link->getPageLink('cart', true, NULL, $smarty.capture.default, false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product-attribute="{$product.id_product_attribute|intval}" data-id-product="{$product.id_product|intval}" data-minimal_quantity="{if isset($product.product_attribute_minimal_quantity) && $product.product_attribute_minimal_quantity >= 1}{$product.product_attribute_minimal_quantity|intval}{else}{$product.minimal_quantity|intval}{/if}"><span>{l s='Add to cart'}</span></a>
09 Декабрь 2017, 18:39:55
Ответ #2
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Что-то не работает.
Параметры заполняются, страница ребутится и в корзину ничего не добавляется.
Консоль ничего не показывает.
09 Декабрь 2017, 20:46:22
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 1060
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Для корзины нужно еще в javascript функцию создать. Простой вариант без ajax добваления это удалить классы ajax_add_to_cart и тогда сразу будет переход в корзину и там будет видно товар.
09 Декабрь 2017, 21:18:07
Ответ #4
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Убрал из ссылки класс "ajax_add_to_cart_button", но все-равно страница просто ребутится и в корзину товар не добавляется.
10 Декабрь 2017, 13:29:19
Ответ #5
  • Ветеран
  • *****
  • Сообщений: 21134
  • Репутация: +25284/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
11 Декабрь 2017, 22:32:31
Ответ #6
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
12 Декабрь 2017, 11:52:18
Ответ #7
  • Ветеран
  • *****
  • Сообщений: 1041
  • Репутация: +10/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Цвет там показывает сразу. Добавить можно кнопку
<a class="button ajax_add_to_cart_button btn btn-default" href="{$link->getPageLink('cart', true, NULL, $smarty.capture.default, false)|escape:'html':'UTF-8'}" rel="nofollow" title="{l s='Add to cart'}" data-id-product-attribute="{$product.id_product_attribute|intval}" data-id-product="{$product.id_product|intval}" data-minimal_quantity="{if isset($product.product_attribute_minimal_quantity) && $product.product_attribute_minimal_quantity >= 1}{$product.product_attribute_minimal_quantity|intval}{else}{$product.minimal_quantity|intval}{/if}"><span>{l s='Add to cart'}</span></a>
Для prestashop 1.7 неподойдет. Так в версии 1.6.
12 Декабрь 2017, 12:09:53
Ответ #8
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 105614
  • Репутация: +39550/-0
    • Просмотр профиля
    • Webstudio UwK
Для prestashop 1.7
Измените шаблон /themes/classic/templates/catalog/_partials/product-add-to-cart.tpl или создайте свой.
В шаблоне /themes/classic/templates/catalog/_partials/miniatures/product.tpl добавить подключение шаблона product-add-to-cart.tpl
{block name='product_add_to_cart'}
        {include file='catalog/_partials/product-add-to-cart.tpl'}
{/block}
Cоздание интернет сайтов Webstudio UwK
13 Декабрь 2017, 22:51:12
Ответ #9
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Я так пробовал - никакой реакции. Кнопка есть, но в корзину не добавляет.
13 Декабрь 2017, 22:55:08
Ответ #10
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
14 Декабрь 2017, 01:11:04
Ответ #11
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
19 Декабрь 2017, 19:43:03
Ответ #12
  • Фрилансер
  • *
  • Сообщений: 231
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
19 Декабрь 2017, 23:41:43
Ответ #13
  • Новичок
  • *
  • Сообщений: 20
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Постараюсь по памяти.
Опишу для главной страницы, у меня там товары модулем Лидеры продаж выводятся, но это не суть.
1. В файл /themes/my_theme/templates/catalog/_patrials/miniatures/product.tpl после блока "product_price_and_shipping" (вы можете в нужном вам месте) вставил форму:
<form action="{$urls.pages.cart}" method="post">
          <input type="hidden" name="token" value="{$static_token}">
          <input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
          {block name='product_add_to_cart'}
              {include file='catalog/_partials/product-add-to-cart-category.tpl'}
          {/block}
 </form>
2. Соответственно, в  /themes/my_theme/templates/catalog/_patrials/ создал файл product-add-to-cart-category.tpl, который просто взял с product-add-to-cart.tpl и переписал немного. Что именно, сейчас не буду выискивать, просто приложу с сообщению, посмотрите сами.
Вроде как все...
В общем, можно в /themes/core.js после
var actionURL = $form.attr('action');
вставить
console.log(query)
console.log(actionURL)
в консоли смотреть все ли параметры заполняются при нажатии на кнопку "В корзину".
Цвет/размер берутся по дефолту.
Моя реализация тут - https://shop.navesilli.com.