Продажа доступа к материалам в Drupal Commerce

В этой статье мы разберемся как организовать платный доступ к определенным разделам сайта на базе Drupal + Commerce

Не давно мене нужно было сделать сайт с платным контентом, доступ к к которому пользователь мог бы получить только после оплаты. Опыта у меня по созданию такого функционала на тот момент не было хотя в теории я понимал, что мне нужно создать в Drupal определенный тип материала к которому нужно запретить доступ для всех ролей (встроенная функция Drupal), а затем создать свою роль которая и будет иметь доступ к данному типу материалов, причем эта новая роль должна быть товаром в интернет магазине. Покопавшись в интернете подробных статей на русском языке я не нашел, но позже я наткнулся на видео от разработчика Drupal Commerce, в котором он рассказывает, как можно продавать доступ к контенту(ролик опубликован в конце статьи), правда видео на английском языке по тому для не знающих языка и для себя в качестве шпаргалки выкладываю подробную инструкцию со скриншотами.

Прежде чем приступить у вас должен быть установлен Drupal и настроенный Commerce, а также нам понадобится следующие модули:

  • Content Access
  • Rules.

если они у вас не установлены скачайте и установите

  1. Создаём тип материала «Premium content» Структура » Типы содержимого » Добавить тип содержимого (admin/structure/types/add)
Сервера, Web и не только
  1. создаётся роль «premium» : Пользователи » Разрешения » Роли (admin/people/permissions/roles)
Сервера, Web и не только
  1. Вернемся к типу материала «Premium content» и даём роли premium разрешение на просмотр материалов Premium content, после установки модуля Content Access у вас на странице редактирования типа материала (admin/structure/types/manage/premium_content) появиться новая вкладка Контроль доступа отметь на ней галочками пункты как на скриншоте ниже:
Сервера, Web и не только
  1. Создаём товар «Premium role»
Сервера, Web и не только

На этом подготовительные работы закончены переходим к настройке правила Rules

Переходим на страницу Rules: Конфигурация » Процесс » Правила (admin/config/workflow/rules) и нажимаем кнопку Добавить новое правило на открывшейся странице вводим название для правила в поле Реакция на событие выбирете Commerce Order » После обновления существующей commerce order и сохраняем правило

Сервера, Web и не только
После добавления правила приходим к его настройке, в разделе Условия нажмите на кнопку Добавить Условие (condition)
В открывшемся окне из списка выбираем опцию: Order contains a particular product
Сервера, Web и не только
Далее в поле Значение вводим артикул нашего товара(см. пункт 4 этой статьи) и сохраняем Условие
Переходим к настройке действия: нажмите на кнопку Добавить действие(action)
Сервера, Web и не только
В открывшемся окне из списка выбираем опцию: Добавить роль пользователя
Далее в поле Селектор данных выбираем по очередно : commerce-order:owener, в поле Роли выбираем нужную нам роль в данном примере: premium и сохраняем действие(action)
Сервера, Web и не только
После всех настроек должен получиться следующий результат:
Сервера, Web и не только

если у вас такой же результат сохраните изменения и попробуйте заказать товар

Теперь после покупки товара «Premium role», юзеру будет назначена роль premium и он получит доступ к Premium content.

Если нужно ограничить роль по времени скачайте модуль role expire, ставьте бета версию модуля и накатите на него патч

Обещанный в начале статьи видео-ролик от разработчика Drupal Commerce

Во втором видео рассказывается как продавать доступ к определённым нодам, а не к типу материала.

Свежие записи
Команда RD

Команда RD и RMDIR позволяют удалять как каталоги, так и

Настройка
help2site
Сигналы биос при включении пк

Сборник сигналов БИОС Оглавление Как определить какие сигналы БИОС передает нам? При каждом запуске компьютера мы слышим одинарный писк, он пищит не просто так, прежде

Windows
help2site
Серьезная уязвимость в Windows 7

Независимый центр безопасности F-secure обнаружил серьезную уязвимость в новой Windows 7. На этот раз уязвимость касается маскировки файлов. В Windows 7 можно замаскировать опасный исполнительный

Web-Дизайн
help2site
Обновления ядра Drupal

Данная статья адресована для начинающих изучать Drupal. Для CMS — Drupal регулярно выходят новые версии (обновления) в которых вносится изменения по усовершенствованию CMS, исправление ошибок/уязвимостей

Настройка
help2site
Как правильно настроить Android-смартфон

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

Настройка
help2site
Основные команды Linux

Оглавление Системная информация отобразить архитектуру компьютера — arch отобразить используемую версию ядра uname -r показать аппаратные системные компоненты — (SMBIOS / DMI) dmidecode -q вывести

Оборудование
help2site
Описание центрального процессора компьютера

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

Web-Дизайн
help2site
Вкладки (Табы/Tabs) на чистом CSS

Вкладки (Табы/Tabs) на чистом CSS с интересным эффектом появления — исчезновения, из минусов высоту вкладки нужно задавать в ручную. Идея построения закладок на одном CSS

Оборудование
help2site
Обзор видеокарты Intel Graphics Media Accelerator 4500M

Intel Graphics Media Accelerator 4500M – встроенная графическая карта, которая поддерживает DirectX 10. Разрабатывалась данная модель карты специально для недорогих ноутбуков. Если сравнивать с GMA