Автор Тема: Организация магазина электронных товаров  (Прочитано 1969 раз)

23 Января 2013, 23:34:45
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Я изучаю Prestashop на предмет создания магазина цифровых (электронных товаров), и только цифровых товаров.
В связи с этим у меня появилось несколько вопросов:
1.Количество товара мне не нужно совсем. Поскольку товар товар электронный, то при покупке его количество не должно уменьшаться, а покупателю не нужна информация о том сколько единиц товара есть на складе. Не знаю, есть ли решение этой проблемы, хотя может она решится сама у меня в дальнейшем при чтении документации.
2.При регистрации пользователя ему необходимо заполнить адрес доставки и т.п. Поскольку магазин цифровой, то данные поля нам не нужны (пользователь получает ссылку на свой емейл или в личный кабинет на сайте, и мне нужен его домашний адрес и телефон), соответственно нужно править форму регистрации.
В общем, можно ли решить эти задачи без ковыряния кода программы?
24 Января 2013, 00:54:18
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 33026
  • Репутация: +26761/-0
    • Просмотр профиля
Количество нужно указывать если активировано управление запасами. Можно указать, что разрешить покупать если товар закончился.Показывать или нет общее количество также можно устанавливать в настройках товаров.
Для измения формы регистрации нужно будет править шаблон или поставить модуль, который управляет полями формы. Здесь уже поднимали такой вопрос.
24 Января 2013, 09:06:24
Ответ #2
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Спасибо, потихоньку разбираюсь.
Еще один вопрос возник: безопасность файлов для загрузки.
Файлы для загрузки хранятся в тех же папках, что и сама CMS. Следовательно, они могут быть доступны в обход системы магазина, например по прямой ссылке.
Предусмотрены ли в системе какие-либо варианты защиты, или мне необходимо самостоятельно продумать этот вопрос, например при помощи .htaccess?
24 Января 2013, 10:19:24
Ответ #3
  • Фрилансер
  • *
  • Сообщений: 198
  • Репутация: +4/-0
  • Разработка и программирование сайтов
    • Просмотр профиля
    • Разработка и программирование сайтов
Спасибо, потихоньку разбираюсь.
Еще один вопрос возник: безопасность файлов для загрузки.
Файлы для загрузки хранятся в тех же папках, что и сама CMS. Следовательно, они могут быть доступны в обход системы магазина, например по прямой ссылке.
Предусмотрены ли в системе какие-либо варианты защиты, или мне необходимо самостоятельно продумать этот вопрос, например при помощи .htaccess?
В престе стандартные варианты защиты, название файла шифруется, после покупки покупатель получает ссылку на зашифрованное имя файла, папка в которой хранятся файлы не имеет прямого доступа.
24 Января 2013, 15:23:48
Ответ #4
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
С количеством товара я разобрался, благодарю.
Другой вопрос, но тоже в эту тему:
Как сделать так, чтобы при добавлении в корзину добавлялся бы только один экземпляр товара? Да и вообще, желательно бы убрать из корзины показ количества экземпляров товара. Поскольку товар электронный, то пользователю не нужно более одной копии.
24 Января 2013, 16:05:52
Ответ #5
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 102473
  • Репутация: +34218/-0
    • Просмотр профиля
Цитировать
Как сделать так, чтобы при добавлении в корзину добавлялся бы только один экземпляр товара?
На странице категорий можно добавить только 1 товар.
На странице товара нужно убрать поле Количество (если в вашей теме шаблон сделан так, что это поле видно и вирт. товара)
<input type="text" name="qty"у виртуального товара, в стандарном шаблоне, это поле не видно.
Цитировать
убрать из корзины показ количества экземпляров товара.
Убрать  поле Количество
{$cart_qties}в шаблоне корзины.
/modules/blockcart/blockcart.tpl
/themes/default/modules/blockcart/blockcart.tpl
24 Января 2013, 17:24:56
Ответ #6
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
При каждом нажатии на кнопку "Добавить в корзину" в корзину добавляется новый экземпляр заказа. Я это имел в виду. (Бывает ведь всякое, может мышка заела и приступ паркисонизма...)
Если отключить аякс, то можно сделать переход в корзину сразу, и тогда пользователь не сможет вторично нажать на кнопку. Но это не очень удобно.
Т.е. как бы сделать так, чтобы по каждой позиции можно было бы добавить только один товар.
Вот так примерно
24 Января 2013, 18:56:17
Ответ #7
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86326
  • Репутация: +25417/-0
  • Сообщество PrestaShop
    • Просмотр профиля
У продукта можно указать - Количество разрешенных загрузок на каждого клиента  (0 для неограниченной загрузки).
25 Января 2013, 11:59:31
Ответ #8
  • Новичок
  • *
  • Сообщений: 5
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Дело не в количестве загрузок, а в количестве добавленных экземпляров товара в корзину.
В старом добром виртемарте , в частности, были такие опции в настройках товара как максимальное количество приобретаемого товара. Ставишь 1 и все, больше пользователь не закажет.
Кстати, подобная же опция должна быть полезна и продавцам не виртуальных товаров.
Увы, но виртуемарт 2.Х - это полный отстой, в сравнении со старыми версиями.
25 Января 2013, 13:36:01
Ответ #9
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 102473
  • Репутация: +34218/-0
    • Просмотр профиля
Если не хватает стандартных функций, то можно установить модуль.
Есть модули которые позволяют ограничить количество товара в корзине. Один из них Quantity Cart можно найти на оф.сайте.
Цитировать
Если отключить аякс, то можно сделать переход в корзину сразу, и тогда пользователь не сможет вторично нажать на кнопку.
Можно добавить переменную Мах.Количество в js, тогда не обязательно отказываться от ajax.
В файле  /modules/blockcart/ajax-cart.js добавить свою функцию или изменить существующую.
// add a product in the cart via ajax
add : function(idProduct, idCombination, addedFromProductPage, callerElement, quantity, whishlist){