Реалізовувати дане рішення ми будемо на старому доброму Drupal 6.x.
Для створення сайту нам знадобляться наступні модулі:
- Ubercart
- Localization update
- Uc Roboxchange
- Token
- Content Access
Крок перший - створення окремого типу матеріалу і спеціальної ролі.
Перше що потрібно зробити, це створити нову роль, яка буде призначатися користувачеві після покупки доступу до платного матеріалу. Як Ви напевно знаєте, в Drupal можна робити різні обмеження на доступ до матеріалів, блокам, модулям і так далі, так ось цю вбудовану функцію ми і будемо використовувати.
Окремі тип матеріалів нам знадобитися, щоб легко розділити безкоштовні сторінки сайту від платних сторінок.
Давайте створимо нову роль, робиться це на сторінці / admin / user / roles. Я її назву pay_role, ви можете назвати так само або будь-яким іншим ім'ям.
Виглядати це буде приблизно так:
Зберігаємо зміни і рухається далі.
Крок два - створення товару для продажу ролі.
Тепер нам потрібно зробити найголовніше, це визначити особливості для товару, так як в нашому випадки товаром є, по суті віртуальна роль на не потрібно завертатися з розрахунком доставки та іншими деталями які необхідні для продажу фізичного товару.
Давайте перейдемо на сторінку налаштування / admin / store / settings / products / edit / features. Нижче я викладаю скрін налаштувань, а під ним напишу невелике пояснення.
На даній сторінці ви можете вибрати яку роль призначати при продажу товару, в залежності від товару можна призначити певну роль, у яке до прикладі може бути визначений термін дії, або роль буде дійсно до певної дати, тут вже на ваш розсуд.
Давайте створимо новий товар, що не будемо сильно вдаватися в опис товару, просто створюємо, вказуємо ціну артикул і найголовніше особливість.
Як видно на малюнку вище при редагуванні товару нам доступна вкладка «Особливості» натискаємо на неї і робимо невеликі налаштування. Додаємо нашу особливість.
Вибираємо артикул нашого товару і роль, яка буде присвоєна користувачеві після покупки даного товару.
Ви так само можете перевизначити термін дії ролі, якщо поставите галочку в полі «Override the default ending expiration».
Ви зберегли особливості ви побачите ось таке ось.
Зберігаємо наш товар і переходь до наступного кроку.
Крок три - легкий тюнінг модуля магазину і підключення засобів оплати.
В першу чергу давайте відключимо непотрібні речі з етапу оформлення замовлення, для цього приберемо зайві галочки на цій сторінці - / admin / store / settings / checkout / edit / panes і тут / admin / store / settings / checkout / edit / fields. На сторінці / admin / store / settings / checkout / edit поставимо галочку - Реєструвати користувачів, якщо облікові записи нових клієнтів створюються під час розрахунку вартості.
Можна так само підключити інші способи оплати, якщо оплата проводиться безготівково або поштовим переказом, то після того як замовлення буде присвоєно статус «платіж отриманий», користувачеві автоматично буде видана роль.
додатково
Тепер вам залишилося тільки створити сторінки з використання створеного типу матеріалу - pay_content. Робиться це стандартно тут / node / add. Ось і все тепер до всіх матеріалів мають тип pay_content можна буде отримати доступ тільки маючи роль pay_role яка в свою чергу присвоюється при купівлі товару.
Я буду радий будь-ссилочку на блог в якості подяки.