Авторизация  
VaM

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

Рекомендуемые сообщения

VaM

В 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}

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vlad

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM
53 минуты назад, Vlad сказал:

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

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

{free_download}

на:

{free_download content_id={$content_id}}

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

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

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

 

function.free_download.php

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
VaM

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

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

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

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация