---
title: 'Модуль упрощенной корзины для Drupal Commerce'
url: 'https://graker.ru/news/2012/07/09/dc_smallcart'
language: ru
type: post
author: 'Роман Грачев'
published: '2012-07-09T20:42:27+04:00'
updated: '2013-03-24T00:54:12+04:00'
categories:
  - Программирование
  - Разработка
  - Друпальчики
---

# Модуль упрощенной корзины для Drupal Commerce

**Дорогие коллеги!
Модуль переехал на NetSpark.Ru: [http://netspark.ru/useful/modules/uproshchennaya-korzina-dlya-drupal-com...](http://netspark.ru/useful/modules/uproshchennaya-korzina-dlya-drupal-commerce "http://netspark.ru/useful/modules/uproshchennaya-korzina-dlya-drupal-commerce").
Дальнейшая поддержка и доработка будет осуществляться там. Скачивать файлы и задавать любые вопросы по работе со скриптом можно тоже там.**

Недавно приводил [код для блока упрощенной корзины](https://graker.ru/news/2012/05/21/uproshchennaya_korzina_dlya_drupal_commerce) *Drupal Commerce*. Заодно обещался показать, как этот блок аяксифицировать, чтоб по нажатии кнопки «В корзину» он немедленно обновлялся.

Аяксифицировать, собственно, очень просто — в D7 для этого есть прекрасный набор функций *ajax\_command\_\**, так что даже JS-код писать никакой не надо. Однако вместо JS-кода надо писать небольшой модуль. Так что пришлось оформить упрощенную корзину в виде модуля DC Smallcart, которым я с вами и хочу поделиться. Ссылка на файл — в конце заметки.

Собственно, что в модуле.

1\. Стандартная табличка корзины Commerce заменяется простой фразой «В корзине всего X товаров на сумму Y рублей». Приблизительно так:

![Упрощенная корзина](https://graker.ru/sites/default/files/styles/max_1300x1300/public/legacy/dc_smallcart.png.webp?itok=K91S-cFV)

Ссылки на корзину и оформление заказа — присутствуют.

2\. Фраза «В корзине всего…» — естественно, на английском. К модулю прилагается файл с переводом на русский. Перевод выполнен безо всякого малодушия, с соблюдением склонений при изменении числа товаров в корзине.

3\. При подключении, модуль автоматически аяксифицирует кнопки «Добавить в корзину». То есть при нажатии на такую кнопку, блок корзины обновится без перезагрузки страницы. Кроме того, без перезагрузки страницы появится и соответствующее системное сообщение (товар добавлен в корзину, и т.д.).

4\. Разметки минимум, но все же для удобства генерация блока выведена в отдельный темплейт.

5\. Есть такой нюанс: при аяксификации естественно заранее неизвестно, какая тема оформления установлена у потребителя модуля. Поэтому не ясно, за какие #id цепляться, чтобы грамотно обновить блок и вывести системное сообщение. В текущей реализации модуль цепляется за id блока для его обновления (#block-dc\_smallcart-small\_cart) и за id хлебных крошек (#breadcrumbs) для вывода системного сообщения сразу после блока хлебных крошек. Поменять эти #id можно прямо в конце файла dc\_smallcart.module.

6\. Картинка с корзиной и стили CSS для оформления блока, естественно, в комплект не входят.

Примерно так. Качайте, пользуйтесь на здоровье.
