Jump to content

  • You cannot start a new topic
  • You cannot reply to this topic

Добавить Товар В Корзину Минуя Выбор Опций Rate Topic   - - - - -

 
  • VetalM
  • Senior Member
  • Members
  • Join Date: 26-Dec 14
  • 580 posts

Posted 15 December 2016 - 01:06 PM #1

Как сделать, чтобы товар с опциями можно было добавить в корзину со страницы категории минуя вход в карточку товара? Опции товара при этом должны остаться выбранные администратором по умолчанию.



 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 15 December 2016 - 02:09 PM #2

design/themes/ТЕМА/templates/common/product_data.tpl

 

нужно заменить

        {if $product.has_options && !$show_product_options && !$details_page}
            {if $but_role == "text"}
                {$opt_but_role="text"}
            {else}
                {$opt_but_role="action"}
            {/if}
            {include file="buttons/button.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_text=__("select_options") but_href="products.view?product_id=`$product.product_id`" but_role=$opt_but_role but_name="" but_meta="ty-btn__primary ty-btn__big"}
        {else}
            {if $extra_button}{$extra_button nofilter} {/if}
                {include file="buttons/add_to_cart.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_name="dispatch[checkout.add..`$obj_id`]" but_role=$but_role block_width=$block_width obj_id=$obj_id product=$product but_meta=$add_to_cart_meta}

            {assign var="cart_button_exists" value=true}
        {/if}

на

            {if $extra_button}{$extra_button nofilter} {/if}
                {include file="buttons/add_to_cart.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_name="dispatch[checkout.add..`$obj_id`]" but_role=$but_role block_width=$block_width obj_id=$obj_id product=$product but_meta=$add_to_cart_meta}

            {assign var="cart_button_exists" value=true}

хук имеется. Но будут выбраны первые опции

 

Для дефолтного выбора уже колдовать надо


GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия

 
  • VetalM
  • Senior Member
  • Members
  • Join Date: 26-Dec 14
  • 580 posts

Posted 16 December 2016 - 02:03 PM #3

хук имеется. Но будут выбраны первые опции

 

 

Именно это я и имел ввиду. Вы как всегда на высоте! Спасибо.



 
  • VetalM
  • Senior Member
  • Members
  • Join Date: 26-Dec 14
  • 580 posts

Posted 10 June 2017 - 08:48 PM #4

design/themes/ТЕМА/templates/common/product_data.tpl

 

нужно заменить

        {if $product.has_options && !$show_product_options && !$details_page}
            {if $but_role == "text"}
                {$opt_but_role="text"}
            {else}
                {$opt_but_role="action"}
            {/if}
            {include file="buttons/button.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_text=__("select_options") but_href="products.view?product_id=`$product.product_id`" but_role=$opt_but_role but_name="" but_meta="ty-btn__primary ty-btn__big"}
        {else}
            {if $extra_button}{$extra_button nofilter} {/if}
                {include file="buttons/add_to_cart.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_name="dispatch[checkout.add..`$obj_id`]" but_role=$but_role block_width=$block_width obj_id=$obj_id product=$product but_meta=$add_to_cart_meta}

            {assign var="cart_button_exists" value=true}
        {/if}

на

            {if $extra_button}{$extra_button nofilter} {/if}
                {include file="buttons/add_to_cart.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_name="dispatch[checkout.add..`$obj_id`]" but_role=$but_role block_width=$block_width obj_id=$obj_id product=$product but_meta=$add_to_cart_meta}

            {assign var="cart_button_exists" value=true}

хук имеется. Но будут выбраны первые опции

Все работает, но заметил, что если товара нет в наличии, то кнопка "Купить" все равно отображается в списке товаров. А текст "Наличие: нет в наличии" не выводится.

Как допилить?



 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 13 June 2017 - 05:37 AM #5

Все работает, но заметил, что если товара нет в наличии, то кнопка "Купить" все равно отображается в списке товаров. А текст "Наличие: нет в наличии" не выводится.

Как допилить?

 

Попробуйте обернуть код кнопки следующим кодом

{if (!$details_page && $product_amount >0) || $details_page}
    ....
{/if}

GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия

 
  • VetalM
  • Senior Member
  • Members
  • Join Date: 26-Dec 14
  • 580 posts

Posted 13 June 2017 - 07:03 AM #6

 

Попробуйте обернуть код кнопки следующим кодом

{if (!$details_page && $product_amount >0) || $details_page}
    ....
{/if}

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



 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 13 June 2017 - 01:05 PM #7

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

 

Не совсем понял с наличием. Пожалуйста, поясните


GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия

 
  • VetalM
  • Senior Member
  • Members
  • Join Date: 26-Dec 14
  • 580 posts

Posted 13 June 2017 - 03:41 PM #8

Не совсем понял с наличием. Пожалуйста, поясните

Attached Thumbnails

  • 1.png
  • 2.png


 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 14 June 2017 - 05:20 AM #9

 

Не совсем понял с наличием. Пожалуйста, поясните

 

 

Вы комбинации не используете? А то для одной комбинации товар может быть в наличии, а для другой - нет


GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия

 
  • VetalM
  • Senior Member
  • Members
  • Join Date: 26-Dec 14
  • 580 posts

Posted 17 June 2017 - 08:16 PM #10

Вы комбинации не используете? А то для одной комбинации товар может быть в наличии, а для другой - нет

Комбинации использую, но отслеживаю кол-во без учета опций



 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 19 June 2017 - 05:55 AM #11

Комбинации использую, но отслеживаю кол-во без учета опций

 

В дефолте и не показывается. Попробуйте в файле

 

design/themes/ТЕМА/templates/blocks/product_list_templates/products_multicolumns.tpl

 

добавить

show_product_amount=true 

и в файле

 

design/themes/ТЕМА/templates/blocks/list_templates/grid_list.tpl

 

добавить

{assign var="product_amount" value="product_amount_`$obj_id`"}
{$smarty.capture.$product_amount nofilter}

GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия

 
  • Tabakov
  • Newbie
  • Trial users
  • Join Date: 30-Sep 17
  • 7 posts

Posted 11 November 2017 - 02:26 PM #12

Здравствуйте. При нажатии на кнопку "Купить" со страницы категории (уже минуя карточку товара), появляется окно "Товар добавлен в корзину" в котором просто указана выбранная по умолчанию опция (радиогруппа). То есть выбрать опцию уже не возможно. У нас продукция "мелочевка", за частую клиент не заходит в карточку товара чтобы полностью изучить его. А увидев окно в котором уже указана опция, покупатель думает, что так и должно быть, да и что такое опция от  может и знать не знает. 

 

Это конечно не беда если покупатель затем идет в корзину и там уже меняет опцию, но бывает когда покупатель сразу нажимает "Оформить заказ" минуя просмотра корзины. Через какое то время узнает, что у товара есть опция и расстраивается.

 

ВОПРОС: Как сделать - принудительный выбор опции после нажатия на кнопку Купить в окне "Товар добавлен в корзину"? Можно ли сделать принудительный выбор только для одной из глобальных опций? (Например в товаре 2 глобальных опции: текст и радиогруппа. Можно ли сделать принудительный выбор только опции радиогруппы или по названию опции?)

ИЛИ

Сейчас на странице категории у товара отображаются 2 кнопки "Купить" и "Купить в 1 клик". Можно ли сделать вместо кнопки купить в 1 клик кнопку выбрать опцию? 

 

Версия CScart

version 4.6.3   type ULTIMATE   status     build RU

 



 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 13 November 2017 - 06:45 AM #13

Я так понимаю, вы вносили изменения из второго поста. Для отображения 2х кнопок используйте вместо

        {if $product.has_options && !$show_product_options && !$details_page}
            {if $but_role == "text"}
                {$opt_but_role="text"}
            {else}
                {$opt_but_role="action"}
            {/if}
            {include file="buttons/button.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_text=__("select_options") but_href="products.view?product_id=`$product.product_id`" but_role=$opt_but_role but_name="" but_meta="ty-btn__primary ty-btn__big"}
        {else}
            {if $extra_button}{$extra_button nofilter} {/if}
                {include file="buttons/add_to_cart.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_name="dispatch[checkout.add..`$obj_id`]" but_role=$but_role block_width=$block_width obj_id=$obj_id product=$product but_meta=$add_to_cart_meta}

            {assign var="cart_button_exists" value=true}
        {/if}

этот код

        {if $product.has_options && !$show_product_options && !$details_page}
            {if $but_role == "text"}
                {$opt_but_role="text"}
            {else}
                {$opt_but_role="action"}
            {/if}
            {include file="buttons/button.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_text=__("select_options") but_href="products.view?product_id=`$product.product_id`" but_role=$opt_but_role but_name="" but_meta="ty-btn__primary ty-btn__big"}
        {/if}
        {if $extra_button}{$extra_button nofilter} {/if}
        {include file="buttons/add_to_cart.tpl" but_id="button_cart_`$obj_prefix``$obj_id`" but_name="dispatch[checkout.add..`$obj_id`]" but_role=$but_role block_width=$block_width obj_id=$obj_id product=$product but_meta=$add_to_cart_meta}
        {assign var="cart_button_exists" value=true}

GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия

 
  • Tabakov
  • Newbie
  • Trial users
  • Join Date: 30-Sep 17
  • 7 posts

Posted 27 November 2017 - 01:36 PM #14

 

Я так понимаю, вы вносили изменения из второго поста. Для отображения 2х кнопок используйте вместо

Да, вносил изменения из второго поста.

 

По вашей рекомендации выше внес изменения которые вы написали, но ничего не изменилось.

(кэш очищен и "Обновлять кэш автоматически" стоит on)    

 

Что должно было произойти - на что обратить внимание?



 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 28 November 2017 - 05:39 AM #15

Да, вносил изменения из второго поста.

 

По вашей рекомендации выше внес изменения которые вы написали, но ничего не изменилось.

(кэш очищен и "Обновлять кэш автоматически" стоит on)    

 

Что должно было произойти - на что обратить внимание?

 

При наличии опций, будут отображаться 2 кнопки - выбрать опции и добавить в корзину


GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия

 
  • Tabakov
  • Newbie
  • Trial users
  • Join Date: 30-Sep 17
  • 7 posts

Posted 28 November 2017 - 11:28 AM #16

При наличии опций, будут отображаться 2 кнопки - выбрать опции и добавить в корзину

К сожалению изменения в коде не повлияли на кнопки. как были "купить" и "купить в один клик", так и остались. 



 
  • eComLabs
  • CS-Cart Expert
  • Authorized Reseller
  • Join Date: 27-Jan 14
  • 16,062 posts

Posted 28 November 2017 - 01:11 PM #17

К сожалению изменения в коде не повлияли на кнопки. как были "купить" и "купить в один клик", так и остались. 

 

Возможно, какой-то модуль перезаписывает стандартный шаблон с кнопками. На локальной установке все сработало


GET A FREE QUOTE | CS-Cart Add-ons | CS-Cart Licenses | CS-Cart Development | CS-Cart Design | Server Configuration

Certified CS-Cart RU Developer | Сертифицированный разработчик на CS-Cart Русская Версия