Sign in to follow this  
support

Добавляем скачивание бесплатных виртуальных товаров!

Recommended Posts

support

В VamShop 2 можно добавлять скачиваемые (виртуальные) товары, т.е. это могут быть любые файлы архивы.

Сделаем так, что бесплатные (цена 0) виртуальные товары можно было скачать прямо в списке товара внутри категории, либо на странице карточки товара, не оформляя заказ.

59d08d567e646_Screenshotfrom2017-10-010959d08d588e69b_Screenshotfrom2017-10-0109

Для создания виртуального товара при создании товара в админке в закладке Данные выбираем тип Скачиваемые и создаём товар как обычно, только добавляем ещё файл, заполняем опции Максимум скачиваний и Максимум дней для закгруки.

Цену ставим 0, это будет считать бесплатный виртуальный товар и что б его скачать не надо будет оформлять заказ в магазине.

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

Для загрузке бесплтаных виртуальных товаров есть специальный тэг в VamShop 2 - {free_download}

Его описание доступно в Админке - Расширения - Тэги - free_download

Будем его использовать.

В Админке - Оформление - Шаблоны - Шаблон карточки товара меняем:

          {product_form}
          <div class="form-group">
            <label class="sr-only">{lang}Qty{/lang}</label>
            <input name="product_quantity" class="form-control" id="product_quantity" type="text" value="1" size="1" />
          </div>          
          <div class="form-group">
          <button type="submit" class="btn btn-primary"><i class="fa fa-shopping-cart"></i> {lang}Add to cart{/lang}</button>
          </div>          
          {module alias="one_click_buy" controller="buy" action="link"}
          {module alias="ask_a_product_question" controller="get" action="ask_link"}
          {/product_form}

на:

          {if {free_download} && {product_price} == 0} {free_download} {/if}
          {if {product_price}>0}
          {product_form}
          <div class="form-group">
            <label class="sr-only">{lang}Qty{/lang}</label>
            <input name="product_quantity" class="form-control" id="product_quantity" type="text" value="1" size="1" />
          </div>          
          <div class="form-group">
          <button type="submit" class="btn btn-primary"><i class="fa fa-shopping-cart"></i> {lang}Add to cart{/lang}</button>
          </div>          
          {module alias="one_click_buy" controller="buy" action="link"}
          {module alias="ask_a_product_question" controller="get" action="ask_link"}
          {/product_form}
          {/if}

Мы добавили метку {free_download} для бесплатных товаров.

А сама метка free_download уже выведет кнопку Скачать для бесплатных виртуальных товаров, вот как это выглядит на странице карточки товара:

59d08d588e69b_Screenshotfrom2017-10-0109

Теперь добавим такую же кнопку Скачать внутри категории, в списке товара.

Для этого в Админке - Оформление - Микро-шаблоны правим шаблон product-listing

Меняем:

      {product_form product_id={$node.id}}
      <div class="inner darken notop">
        <button class="btn btn-default btn-add-to-cart" type="submit"><i class="fa fa-shopping-cart"></i> {lang}Buy{/lang}</button>
        {if isset($is_compare)}<a href="{base_path}/category/addcmp/{$node.alias}/{$content_alias->value}{$ext}" class="btn btn-default btn-add-to-cart"><i class="fa fa-bookmark"></i> {lang}Compare{/lang}</a>{/if}
      </div>
      {/product_form}

на:

      {if {$node.price} > 0}
      {product_form product_id={$node.id}}
      <div class="inner darken notop">
        <button class="btn btn-default btn-add-to-cart" type="submit"><i class="fa fa-shopping-cart"></i> {lang}Buy{/lang}</button>
        {if isset($is_compare)}<a href="{base_path}/category/addcmp/{$node.alias}/{$content_alias->value}{$ext}" class="btn btn-default btn-add-to-cart"><i class="fa fa-bookmark"></i> {lang}Compare{/lang}</a>{/if}
      </div>
      {/product_form}
      {else}{free_download content_id={$node.id}}{/if}

и получаем кнопку Скачать у бесплатных виртуальных товаров внутри категории.

59d08d567e646_Screenshotfrom2017-10-0109

Как убрать кнопку Купить в шаблоне карточки товара для бесплатных виртуальных товаров?!

В админке - Оформление - Шаблоны - Шаблон карточки товара меняйте:

          {product_form}
          <div class="form-group">
            <label class="sr-only">{lang}Qty{/lang}</label>
            <input name="product_quantity" class="form-control" id="product_quantity" type="text" value="1" size="1" aria-label="quantity" />
          </div>          
          <div class="form-group">
          <button type="submit" class="btn btn-warning"><i class="fa fa-shopping-cart"></i> {lang}Add to cart{/lang}</button>
          </div>          
          {module alias="one_click_buy" controller="buy" action="link"}
          {module alias="ask_a_product_question" controller="get" action="ask_link"}
          {/product_form}

на:

{if {free_download} && {product_price} == 0}
{free_download}
{else}
          {product_form}
          <div class="form-group">
            <label class="sr-only">{lang}Qty{/lang}</label>
            <input name="product_quantity" class="form-control" id="product_quantity" type="text" value="1" size="1" aria-label="quantity" />
          </div>          
          <div class="form-group">
          <button type="submit" class="btn btn-warning"><i class="fa fa-shopping-cart"></i> {lang}Add to cart{/lang}</button>
          </div>          
          {module alias="one_click_buy" controller="buy" action="link"}
          {module alias="ask_a_product_question" controller="get" action="ask_link"}
          {/product_form}
{/if}

 

 

Share this post


Link to post
Share on other sites
Vlad

Кнопка внутри категории работает, а в карточке товара выводит ошибку 404.

Share this post


Link to post
Share on other sites
support
53 минуты назад, Vlad сказал:

Кнопка внутри категории работает, а в карточке товара выводит ошибку 404.

Попробуйте либо в Админке - Оформление - Шаблон - Шаблон карточки товара поменять:

{free_download}

на:

{free_download content_id={$content_id}}

Либо шаблон не трогать и в самом файле /app/Catalog/function.free_download.php чуть поменять код.

Исправленный файл прицепил.

т.е. просто его залейте к себе, тогда и на странице карточки товара, по идее будет правильно работать.

 

function.free_download.php

Share this post


Link to post
Share on other sites
Vlad
31 минуту назад, VaM сказал:

Попробуйте либо в Админке - Оформление - Шаблон - Шаблон карточки товара поменять:


{free_download}

на:


{free_download content_id={$content_id}}

Либо шаблон не трогать и в самом файле /app/Catalog/function.free_download.php чуть поменять код.

Исправленный файл прицепил.

т.е. просто его залейте к себе, тогда и на странице карточки товара, по идее будет правильно работать.

первый вариант также выдает ошибку 404, а второй выводит так https://aim3d.ru/downloadable/dekor-free001.html

Share this post


Link to post
Share on other sites
support

Только что у Вас проверял на сайте, 5 минут назад, всё работало.

Скиньте личным сообщением доступ на ftp, посмотрю.

7 минут назад, Vlad сказал:

первый вариант также выдает ошибку 404, а второй выводит так https://aim3d.ru/downloadable/dekor-free001.html

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this