Процесс заказа в Уберкарт многие считают слишком сложным.
Для его упрощения придумал использовать комментарии как форму заказа товара.
Что делаем:
1. К комментарию добавляем текстовые поля "Количество товара", "Телефон", "ФИО" (покупателя). В D6 через модуль [module=nodecomment], D7 - в ядре.
2. На странице товара темизируем кнопку "Добавить комментарий", как "Быстрый заказ". Хотя можно и через перевод интерфейса
3. Сами комментарии делаем по умолчанию не опубликованными, чтобы пользователь мог их оставлять, но не мог видеть. С помощью Rules можно настроить, чтобы покупателю, после заказа-комментария выдавалась информация типа "спасибо за заказ, мы вам перезвоним". Ну и чтобы админу на почту приходила инфа о новых комментариях.
4. Все комментарии-заказы сводим на одну страницу для админа.
Это все (!) что делал я на момент поста.
Что можно еще сделать:
* Вывести создание комментария-заказа в всплывающее окно.
* Добавить разные статусы заказа через селект лист.
* Может быть и калькуляцию стоимости заказа в зависимости от количества прикрутить. Главное как-то передать значение цены родительской ноды.
В общем ограничено только фантазией разработчика.
Комментарии
Это напоминает рецепт в советской газете как сделать соковыжималку при помощи автомобильного домкрата
Drupal - инструмент..
Каждый применяет его по мере своих знаний и опыта для достижения необходимого результата..
Да и неплохое решение.... я бы даже сказал, хорошее..-))
Интересное решение, пригодиться.
если из всех инструментов тебе доступен лишь молоток - всё вокруг начинает казаться гвоздями (с)
да, про домкрат - это точно в цель
бредовое решение
имхо
С проблемой согласен, но вот решение при помощи комментариев имхо не очень.
если оно работает, как надо - что тут бредового?
Или по вашему надо было задействовать кучу модулей + подкорректировать их работу парочкой своих?-))
ЗЫ.. и вообще-то собственные утверждения принято аргументировать..
Просто воспользовавшись этим решением мы автоматом отказавшемся от комментариев которые могу оставлять пользователи о товаре, если нам они не нужны то тогда норм, хотя тоже спорно.
с таким же работающим результатом можно запихнуть заказы в таксономию - благо, в 7 можно насоздавать требуемых филдов, а в 6 - прикрутить пару модулей
к чему такие велосипеды, при существовании webform?
ок
вставляем блок с вебформой
ок
ок
Всё из коробки.
Модуль своим названием как бы символизирует, что он для этого предназначен
lightbox2 точно умеет показывать ноду в модальном окне
ок
хз
Для д7 вот буквально попробовал модуль Basic Cart.
Один раз на вебформ делал возможность заявки - на кнопку вешался урл с параметром, который заголовок(название товара) просто в поле подставлял.
Комментарии для этого дела конечно можно использовать, но логику это как-то ломает.. Я за специализированные инструменты, в друпале, благо, хватает которых.
Хорошо допустим есть товар. Возле него ставим блок созданый вебформ. Вопрос: как в этот блок передать с какого товара была форма отправлена?
Похожая тема описана тут http://site-made.ru/content/drupal-modul-webform-sozdanie-formy-zakaza-t... , пробовал как то, все работало
Если для товара нужны комментарии пользователей, то можно создавать ноду типа "заказ" со ссылкой на товар. К ноде потом можно прикрутить поля "статус", "дата отправки" и тд.
Сабж имеет право на жизнь.
Это елементарно
Нас насколько я помню по древним вебформам там для поля можно указывать переменную типа %get, те брать параметры GET запроса
Практически это выглядит так
размещаем ссылку
<?php
print l(t('Order this product'), 'order-form', array('query' => array('nid' => arg(1), 'title' => drupal_get_title())));
?>
На странице order-form у нас вебформа
Там определяем одно из полей как такое, что может хавать переменную %get
То есть, чтобы автоматом заполнилось поле заголовка формы названием того товара, который мы заказываем, там нужно указать %get[1] (или %get[2] - эксперементируй)
Твоё решение простое и рабочее, но оно через попу. Лучше сделать по человечески
http://dovbysh.com/ru/blogs/kodo/webform-ispolzovanie-tokenov-title-i-nid
Примеры - https://funjapan.ru/tour/tur-na-sakuru-v-yaponiyu-maksimum - на Д7
http://antei.co.jp/tractors/%E3%82%A4%E3%82%BB%E3%82%AD%E4%B8%AD%E5%8F%A... - Д7
Для анонимов не работает.
вот и я о том же.
Конечно радует, что в Друпале можно сделать через жопу и это даже будет работать. Только потом появляются неразрешимые задачи, которые VasyOK отдал на откуп фантазии разработчика... и там еще появятся новые костыли
так ни одного аргументированного "против" мы и не услышали..
ЗЫ... извиняюсь... единственный аргумент - если должна быть возможность комментировать товар..
А если этого не надо?
Господа-коллеги-возразившые!!
Вы "палите" свою самооценку.. проще надо к людям... всех с тяпницей 13-го -))
Потому что надо request указывать вместо get
Разбирался с этим достаточно давно, но насколько помню и request не работает.
Сейчас проверять времени нет, но как будет необходимость опробую еще раз.
Вообще на друпал.орг по этому поводу были длительные рассуждения по поводу безопасности и т.п.
не помню уже где вычитал, но работает:
http://site.ru.ru/order?tovar=название-товара
в форме значение по умолчанию:
%get[tovar]
Все прекрасно работает
Я не понял только одну вещь: зачем тут тогда Юберкарт вообще? Ведь это и без него работать будет.
P.S. Как то делал подобное через темизацию страницы товара, кнопкой на странице с товаром, по нажатию которой идет редирект с get-запросом на webform с заполненым полем "Наименование товара" (подставляется из запроса) - по моему более удобное решение, а список заказов доступен через результаты заполнения формы.
Получается, правда 2 клика )) Еще, по идее, можно также выводить на страницах с товаром блок с веб-формой, в которую в скрытое поле подставлять url или значение из поля ноды...
P.P.S. Не все комментарии прочитал перед своим комментом, прошу прощения за дублированное описание способов )
Скрытое поле с %nid
Да, будет.
и весь функцеанал уберкарта в топку)))) а не лучше ли тогда уберкарт коментариями заменить? а если у меня с покупки бонусы начисляються? коментарии это тоже учтут?)))) извращенцы вы ребята )
Наоборот весь функционал Уберкарта остается, если юзер будет жать кнопку "В корзину" от Уберкарта. А для тех кому форма заказа слишком сложна расчет скидок не предусматривается "по идее".
Все ПонтЫ..
Не подходит - не используем..
Необходимо и достаточно - вперед..
В принципе может как-то извернуться через создание ноды автоматом приреференсенной к товару. Ну это если кого-то комментарии не устраивают. Боюсь только что модуль http://drupal.org/project/noderefcreate слабоват для этого
Пишу это тем, кто нашел данную страничку по запросу "drupal ubercart preorder"
Решение конечно же рабочее, но лучше использовать webform + colorbox. Информация:
https://blogpost.pp.ua/drupal/93
https://drupal.ru/node/138782
В чем плюс от Вашего метода по сравнению с basic_cart ?
Тем что худо бедно работает вместе с Уберкартом. Или Бейсик картом.
Алексей, дату поста видел?