Шаг 7. Тестируем готовый интернет-магазин

Теперь когда наш интернет-магазин готов нужно проверить его работоспособность. Для этого попробуем сделать тестовый заказ.

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

Добавление товара в корзину

После этого перейдем на страницу оформления заказа, для этого нажмем на кнопку Оформление заказа в блоке Корзина.

На странице Оформление заказа мы видим один товар в корзине и заполняем форму с информацией для доставки. После чего нажимаем Продолжить оформление.

Можно заметить что некоторые элементы остались не переведенными (такие как Order total и Billing information). Для решения этой проблемы можно использовать модуль Internationalization, о нем мы поговорим в отдельном курсе.

Страница заказа

Далее мы попадаем на страницу Просмотр заказа, здесь мы можем проверить правильность всех введенных нами данных и выбрать способ оплаты. На данный момент у нас доступен и выбран по умолчанию только один способ оплаты Наличными при доставке.

Также нажимаем Продолжить оформление.

Просмотр заказа

Заказ оформлен и мы видим составленное нами завершающее сообщение.

Завершающее сообщение

Теперь уже от лица администратора посмотрим как выглядит сделанный нами заказ. Перейдем в раздел Заказы:

Ссылка на заказы

В списке заказов мы видим сделанный нами заказ, его состояние В ожидании, это значит что он еще не был оплачен.

Ссылка на просмотр первого заказа

Переходим на страницу просмотра заказа и видим всю необходимую нам информацию для доставки, список заказанных товаров и общую сумму заказа.

Просмотр первого заказа

Далее после доставки заказы мы можем перейти к его редактированию и установить Статус заказа Завершенный.

Редактирование первого заказа

На этом мы завершим этот курс. В нем мы рассмотрели пошаговый процесс построения интернет-магазина на Drupal 7 и модуле Commerce.

Поделись с друзьями:

Комментарии

Спасибо за очень полезный курс!
Есть пара замечаний:
1. В шаге 5 при добавлении во вьюшку поля с изображением Вы указываете "Изображение как ссылка на содержимое". Эта ссылка будет вести на сущность "Товар" через админ-панель. Лучше перезапись результата или хотя бы не делать ссылку.
2. Шаг 7 протестирован под админом, под анонимусом products и ссылки меню категорий выдают пустые списки. Пока не могу понять, в чем причина. Главную страницу я менять не стал и на ней видно все товары, а вот через вьюшки - никак ((

1 - Да, действительно изображение в данном случае это поле товара а не представления товара. Так что верно подмечено тут надо делать перезапись результата и формировать ссылку из id материала.

2 - Тут надо дать анониму право доступа Просмотр всех товар любого типа .

Спасибо за отзыв !

Добавил права доступа и все заработало, спасибо!
Вчера смутило то, что в просмотре нод поля товара все равно были видны

Если можно, немного подробнее о формировании ссылки из id материала... для новичков... пожалуйста. ))

Переходим на страницу редактирования представления и и нажимаем на ссылку Добавить в секции Поля:

Ссылка Добавить поле

В списке полей выбираем поле Nid.

Выбор поля ID материала

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

Исключить из вывода

Далее меняем порядок полей

Ссылка изменить порядок полей

Ставим поле Nid первым и нажимаем Применить.

Изменить порядок полей

Переходим к редактированию поля Изображение

Ссылка изменить поле Изображение

Выставляем следующие настройки и нажимаем кнопку Применить

Поле как ссылка на материал

Сохраняем представление. После этого изображения товаров будут завернуты в ссылки ведущие на страницу представления товара.

Все равно идет в produkt

Думал, что где-то ошибку допустил. Удалил все, заново установил DC, заново сделал все по уроку - то же самое.

Убедитесь что в поле Изображение у вас правильно выставлена настройка Изображение как ссылка на.

Поле изображение

Решено!
В поле "Изображение как ссылка на" нужно указать "Ничего"

Спасибо за урок. И извините за беспокойство.

Денис, у меня есть еще один вопрос, если не сложно, посоветуйте как быть:
когда гость кликает на первый термин (в данном случае "Инвентарь") ему представляется содержимое всех дочерних терминов. А как сделать так, чтобы сначала выводились некие заглавия (в виде картинок с подписью) этих дочерних терминов ("Мячи", "Обручи"), а уже далее сами товары? И если для этого придется увеличить количество уровней, как это скажется на индексировании?

Тут в двух словах расписать не получится, но сделать это можно и совсем не сложно. Я планирую в ближайшее время создать полный курс по модулю Views в котором будет рассмотрен подобный пример.

Заранее благодарен.

Нажимаю на товар, страница не открывается и пишется, что произошла ошибка сервера...
И ещё вопрос, из под админа вижу товар, который на сайте, если зайти под гостем, то не один товар не отображается.

Читайте комментарии выше: Надо дать анониму право доступа Просмотр всех товар любого типа.

Сразу Спасибо все получилось! Очень хороший материал!

Есть пару вопросов:
1) Сделал (формировании ссылки из id материала), для анонимов все норм, теперь под админом кликая на изображения осталась старая ситуация
2) Как можно сделать человечные ссылки вместо \taxonomy\terms, \node\4, например inventar\myachi\
3) 01 Ноября 2013 22:36 Я планирую в ближайшее время создать полный курс по модулю Views в котором будет рассмотрен подобный пример. - когда это время настанет?) как бы ждем, все еще надо)
4) Есть ваши контакты какие-то там страница в ВК, группа, или еще чего-то, чтобы можно было оперативнее общаться при случае

1. Смотрите комментарии выше: нужно поставить настройку Изображение как ссылка на - Ничего.

2. Можно задавать синонимы URL при редактировании нодов и терминов, но чтобы не делать это каждый раз вручную лучше использовать модуль Pathauto.

3. Курс готов наполовину, надеюсь что до нового года опубликую.

4. Сделаю форму обратной связи в ближайшее время и группу в ВК.

Когда добавляешь в корзину товар не под adminом, отсутствует кнопка "оформление заказа", только "обновить корзину".

Дайте всем ролям право доступа Доступ к оформлению заказа.

Спасибо, помогло.

А как кредитные карточки подключить для оплаты типа виза или мастеркард ?

Для Commerce есть целый ряд модулей позволяющих использовать разные платежные системы. Смотрите весь список здесь Payment Modules.

Увы, там забугорные методы оплаты. Есть ли вебмани, яндекс.деньги, приват24?

Что-то поменялось у них на сайте, раньше список был больше. В любом случае все есть на drupal.org: Commerce Privat24, Commerce Yandex.Money.

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

Commerce предоставляет событие Completing the checkout process для модуля Rules. Можно создать правило на это событие которое будет отправлять письмо.

Создал магазин но его не видят незарегистрированные пользователи. Как сделать создаение пользователя в системе после оформления заказа ?

Есть право доступа Доступ к оформлению заказа, дайте его анонимному пользователю. Создание пользователя при оформлении заказа в Commerce работает по умолчанию.

у меня не видит вьюху связанную с продуктом ( т.е. когда делаю RELATIONSHIPS с Product) у меня анонимные пользователя перестают видеть список нод.

а все решил проблему надо выставить галочки в admin/people/permissions "View own products of any type" и "View own Product products" просмотр анониму

Странички Способы оплаты и О нас выводит в списке товаров.

Как устранить эту проблему?

Если список это представление, то добавить фильтр по типу материалов "Представление товара".

Денис, еще раз здравствуйте.
Пройдя по всем урокам удалось склепать магазинчик... Но осталось несколько вопросов которые хотел бы понять:
1) Тот вариант интернет магазина который получился вполне работоспособный для интернет магазина на 1, 2, ..., 10 ну максимум 100 товаров. А как быть если товаров 10000 или того больше? Можно ли как-то автоматизировать процесс с помощью csv файла?
2) Если товар имеет какие-то параметры? Ну не знаю, к примеру если мы продаем те же мячи... Они могут быть кожаные, резиновые, кож зам. Есть ли какой-то модуль с помощью которого можно выбрать по параметру. Т.е. некий фильтр... Ну например как здесь с фильтром резины http://rezina.cc/diski?brand=rc_design,league Догадываюсь что это как-то можно реализовать с помощью модуля views но как не приложу ума.

1) Этот курс планировался как ознакомительный, то есть показать основы модуля Commerce. Хотя не понимаю в чем проблема в такой магазин можно загрузить 10000 товаров и все будет работать точно также.

Для импорта товаров с помощью csv посмотрите модули Feeds и Migrate.

2) Все эти фильтры можно сделать с помощью views. Смотрите курс по Views. Если что-то осталось неясно то задавайте вопросы.

Денис, да я ведь и не спорю с Вами, просто хотел узнать у человека который на этом "собаку съел". Я к сожалению на друпале ничего сложнее каталога товара не делал. Поэтому и пытаюсь узнать как можно больше :)

1) Да конечно можно, но хотел бы я посмотреть на того человека который обновляет этот магазин в 10000 позиций... Пока он обновит 1000 уже необходимо будет обновлять наличие цену и т.д. заново :)

Если можно в кратце как использовать их. На просторах интернета нашел несколько примеров, но как-то они кривовато написаны, в отличии от Ваших уроков. Ну или может Вы можете порекомендовать какую-то статью которая подойдет к Вашим урокам.

2) Спасибо. Посмотрю курс. Собирался глянуть его но пока не добрался.

Если что-то осталось неясно то задавайте вопросы.

По описанному в этом курсе, стало все на свои места и вопросов нет. Т.е. все работает так как Вы пишете, ну на крайний случай с бубном необходимо было поплясать. Отсюда возникает вопрос, куда лучше всего Вам задавать вопросы?
Спасибо.
С Уважением, Дмитрий.

По Migrate стандартная документация очень хорошая. По Feeds не знаю, ничего не читал, разбирался методом тыка. Может когда-то сделаю курсы по этим модулям. Вопросы лучше всего задавать здесь на сайте.

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

Дайте анонимному пользователю право доступа Доступ к оформлению заказа.

я не совсем хорошо ориентируюсь еще , можно подробнее - каким образом это сделать ?

Читайте другие курсы, этот курс для тех кто уже ориентируется в Drupal.

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

о чем должна речь идти понимаю ... но не могу выудить ... потому как перевод смешанный в правах доступа ... вот в этом то и загвоздка ...

Права доступа редактируются в разделе "Пользователи" -> "Права доступа" (admin/people/permissions), ищи в разделе модуля Commerce.

А что делать с такой ситуацией: есть товар, и к нему должны выбираться галочками/полями расходники/запасные части, которые соответственно вместе с ним комплектуются по коробкам, и рассчитывается общая стоимость заказа. Например. Основной товар - принтер. И к нему идет тонер, картридж, бумага.

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

Принтеры - [7]шт. по 5000р

В комплект к каждому:
Бумага - [3] пачки, по 100р
Тонер - [2] упаковки 800гр, по 200р
________________________

Общая стоимость: 399900

Ubercart курил, почти то. Но нельзя задать количество атрибутов. У похожего магазина вообще на каждый товар отдельная страница, не укомплектованые, почти укомплектованые и т.д. Одно блуждание и путаница, хех))

Есть модуль для этого https://www.drupal.org/project/commerce_product_bundle, сам его еще не разбирал так что о его качестве и гибкости ничего сказать не могу.

dobrogo vam zdravia Denis!
vse sdelal zanogo na Acquia i vse zarabotalo spasibo vam bolshoe i + vopros est' li u vas uroki po sozdaniu perekluchatela yazikov nu i sootvetstvenno contenta?

spasibo

Пока нету таких уроков.

Денис, как организовать учет наличия товара?
Сделал интернет магазин, но никак не пойму где настроить наличие товара.

Для интернет магазина важно отображение наличия товара.

Через какой модуль можно редактировать наличие и количество товара?

Чтобы товар списывался при завершении заказа и уменьшалось значение наличия товара вплоть до (нет в наличии).

Спасибо!

Для этого конечно же есть модуль Commerce Stock.

Я создал каталог с определенным названием, сменил это название, и понял что нужно вернуть назад. После того как я опять сменил название на тоже, что было вначале, мне пишет "Oops, looks like this request tried to create an infinite loop. We do not allow such things here. We are a professional website!" Как администратор, я могу заходить на эту страницу, но обычные пользователи не могут на нее зайти.. помогите пожалуйста :(

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

Доброго времени суток, Денис! По вашим урокам получился магазин http://podguz24.ru, Спасибо большое! Хочется кое-что изменить в нем, но не могу сообразить как.
1. Как можно убрать слова Заголовок:, Изображение:, Цена:, Форма добавления в корзину: из представления товаров. Чтобы было только конкретно название товара, картинка, цена, и кнопка корзины.
2. Как сделать, чтобы товары можно было просматривать и постранично, и задавать количество выводимых на странице товаров, по 10, 20 или все товары сразу.

1 - Это в настройках отображения admin/structure/types/manage/product_display/display
2 - Посмотрите модуль Views Pager Count

Здравствуйте, Денис. Спасибо большое за ваши уроки, они очень содержательные и понятные. Хочу задать один вопрос. Есть приложение, сделанное в Devel Studio 2.0 (расчет стоимости окон пвх исходя из размеров, комплектации и т.д.). Можно ли это приложение внедрить в сайт?

Прекрасно написаны уроки, но некоторые темы остались не раскрыты:
1. опции товара (например, размеры одежды)
2. регистрация юзерей при оформлении заказа
3. подключение дополнительных методов оплаты и доставки

А вообще - проделана прекрасная работа!

У меня не работает Кнопка Страна( в списке нет допустимых стран )

У Вас действительно простые уроки, которые расписаны по полочкам. Спасибо за Ваш труд!Все сделала по Вашим урокам. Все получилось , ура! Но я никак не могу понять где и как настроить красивую карточку товара? Я поняла что это можно настроить с помощью модуля Views slideshow, но как?
Мне нужно сдать так, чтобы в карточке товара было несколько картинок одного товара в разном ракурсе, стандартно , одна побольше и несколько маленьких. При клике чтобы они увеличивались. Как это сделать подскажите пожалуйста, я уже столько всего перерыла. Или направьте где посмотреть.

Вы можете использовать модуль Colorbox. Это именно то что вам нужно. Как именно его настроить расписывать долго это заслуживает отдельного урока, но в сети и так много подобных инструкций. Как более простое готовое решение посмотрите Gallery formatter.

Спасибо большое. Получилось установить Gallery formatter, но возникла такая проблема. 1.Теперь на главной странице представление товара в виде галереи и так же в карточке товара. Как их разделить. Как сделать так чтобы на главной товар показывался одной картинкой, а уже в карточке была бы галерея? Еще, некоторые темы , например Marinelli, не правильно отображают стрелки галереи (Gallery formatter). Пришлось перейти на другую тему(.
2. Еще столкнулась с такой проблемой - Colorbox не работает, как бы я не старалась.
3. Как добавить характеристики товара (не описание) справа от картинки?

Не планируете ли вы продолжить тему интернет-магазинов? Очень жду, только по Вашим уроком реально получился магазин)

1 - в двух словах не ответишь, 2 - тоже самое (причин может быть большое множество) 3 - смотрите курс Изучаем модули Panels и Page Manager. Да очень хотелось бы сделать более подробные и охватывающие уроки, но к сожалению пока что совсем нет времени.

Добрый вечер. При тестировании, одновременно с завершающим сообщением выдает следующую ошибку. Невозможно отправить e-mail. Свяжитесь с администратором сайта, если проблема повторяется. Прошу откликнуться и подсказать. Спасибо.

Это говорит о том что ваш сервер не отправляет письма. Модуль PHPMailer может вам помочь.

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

У меня к Вам вопрос, как к гуру друпала. не по теме уроков, но в продолжение.
Пытаюсь сделать экспорт товаров для яндекс-маркета. пробовал https://www.drupal.org/project/yml_export , не заботает с коммерцем, пробовал Data Export, выдаёт xml одной портянкой, без возможности вложения одних тегов в другие. в итоге вроде нашёл https://www.drupal.org/sandbox/validoll/2274525 , должен работать. но...
На странице настроек говорит "No term fields attached to product node! Export can't work properly. Please create at least one taxonomy vocabulary and use it for your products." и "Category field" пустая...
Подскажите, может Вы знаете =-)
Что он от меня хочет?

С яндекс маректом никогда дела не имел, поэтому не особ в курсе готовых решений для этого. Попробуйте еще https://www.drupal.org/sandbox/zestagio/2070573

Спасибо, попробовал. модуль установился, но нигде не появился.

Go to admin/people/permissions#module-commerce_yandex_market to set
permission for module.
Go to admin/commerce/yandex-market/settings to configure the global settings.
Go to admin/commerce/yandex-market to add the display(s) which produce(s)
data for XML-file.

по всем этим ссылкам выдаёт полное отсутствие этого модуля(((

и всё же, что делать с "No term fields attached to product node! Export can't work properly. Please create at least one taxonomy vocabulary and use it for your products."? этот модуль хоть что-то похожее на работу выдаёт

Хех, за то рекомендованный Вами модуль появился в /admin/structure/views/
и вроде как даже работает.
Благодарю Вас!!

Денис Захаров,
А не подскажите пожалуйста как сделать сортировку по цене товаров?
Чтобы посетителю сайта, можно было выбрать от большей цене к меньшей, или наоборот..
Спасибо.

Добавить раскрытый фильтр по цене в представление.

добрый день! можете помочь в чем проблема..в место добавления карзину выводит "Product not available"

Здравствуйте, можно ли сделать так чтобы в блоке выводились поля: артикул, название, цена и прочее, но картинка была бы общей для определенной группы полей, т.е. не выводить для каждого товара свою картинку, а одну для всех. Допустим картинка одежды, но у нее разные размеры, разные артикулы и разная цена.И чтобы поля находились напротив друг друга, чтобы понятно было.