[Решение] Платный доступ к контенту

Главные вкладки

Аватар пользователя superintendent superintendent 6 декабря 2009 в 17:46

1. Создаём роль VIP.
2. Включаем Content Permissions (в ССК)
a. Создаём тип контента VIP. Убиваем в нем дефолтное «боди».
b. В типе контента VIP создаём текстовое поле VIP
c. В разрешениях admin/user/permissions для поля VIP указываем право чтения только для роли VIP
3. Включаем модули Rules, Ubercart, Ubercart - Userpoints (Userpoints Product), Userpoints (Userpoints No Negative, Userpoints Role, Userpoints rules integration).
4. Создаём товар «point» ценой 1 рубль.
5. Создаём правило: вычитание 1 балла за просмотр ноды VIP.
a. Настройки правила: «Content is going to be viewed»
b. IF: указать тип контента VIP
c. DO: указать «Grant points to a user» = -1.
6. В /admin/settings/userpoints указываем: Points for Roles/ Role settings/ Баллов для роли:VIP = 1

В итоге получаем:
1. Анонимусы и юзеры не могут просматривать контент VIP.
2. Юзеры оплачивают (покупая points) любую сумму, в результате чего баланс становится >0, юзер получает автоматически роль VIP и доступ к контенту VIP.
3. Просматривает ноды VIP, в результате каждый раз теряет по баллу, и так до 0 – в этот момент роль сбрасывается до юзера.

ПС. Не забудьте включить Userpoints No Negative, т.к. юзеры видят заголовки нод, и иначе при тыке баланс будет уходить в минус.
ППС. Цену можно любую ставить, в Points for Roles указывать соответственно.

Комментарии

Аватар пользователя Petro Petro 10 августа 2011 в 9:49

Попробовал (Drupal 7), не меняется роль когда я добавляю пользователь поинты.
В 3-м пункте у меня нет уберката - он мне без надобности, т.е. админ добавляет поинты вручную за какие то заслуги. И когда он добавляет поинты - роль не меняется... В чем может быть проблема?

Аватар пользователя superintendent superintendent 28 ноября 2012 в 14:50

"meloff" wrote:

А как реализовать покупку поинтов пользователями? Можно поподробнее на этом пункте?

написано же «4. Создаём товар «point» ценой 1 рубль.»

это товар в юберкарте - в юберкарте и продавать/покупать. читайте внимательно все что написано.

Аватар пользователя meloff meloff 28 ноября 2012 в 15:17

K.V. wrote:

это товар в юберкарте - в юберкарте и продавать/покупать. читайте внимательно все что написано.

А, ну это-то понятно. Я просто немножко не в ту тему вопрос конечно задал.. тут вопрос в доступе к контенту, но меня просто интересует сам процесс пополнения кол-ва поинтов. Если создать товар поинт ценой 1 рубль, с правилом зачисления на счет пользователя соответственно 1го поинта (через product_feature или rules), то получается, что купить пользователь сможет за раз только 1 поинт. А если пользователь захочет, к примеру, купить 39 поинтов, т.е. якобы пополнить баланс на 39 рублей, чтобы просмотреть 39 VIP страниц, как поступать в таком случае? Сейчас активно сёрфю инет на эту тему и пришла в голову мысль создать товар с выборочной ценой через uc_varprice и как-то связать через rules сумму, введенную пользователем с кол-вом points, которые упадут на баланс пользователя. Правда после этого появится вопрос как разграничить реальный платежный модуль (к примеру roboXchange) с userpoits_ubercart так, чтобы они не вываливались оба при процессе заказа товара (да, у меня еще и товары). В общем, я конечно немного не в тему тут, но если есть подсказка, рад узнать Smile Спасибо.

Аватар пользователя Andruxa Andruxa 28 ноября 2012 в 14:54

"K.V." wrote:
В итоге получаем:
1. Анонимусы и юзеры не могут просматривать контент VIP.
2. Юзеры оплачивают (покупая points) любую сумму, в результате чего баланс становится >0, юзер получает автоматически роль VIP и доступ к контенту VIP.

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

Аватар пользователя superintendent superintendent 28 ноября 2012 в 18:08

"Andruxa" wrote:
и как юзер должен принять решение - покупать доступ к контенту или нет, если он его не видит?
обычно люди не покупают котов в мешке

он видит Заголовок ноды. Ну и можно дополнительное поле текстовое создать, с текстом, где будет написано, что этот контент платный, цена такая, купите поинты.

"ХулиGUN" wrote:
В семёрке в рулсах в кондишн есть entity is new. Шестёрки

ну да, этот текст писался когда ещё 7ки не было.

"meloff" wrote:
то получается, что купить пользователь сможет за раз только 1 поинт

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

Аватар пользователя meloff meloff 2 декабря 2012 в 17:32

K.V. wrote:
"meloff" wrote:
то получается, что купить пользователь сможет за раз только 1 поинт

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

Придумал свой способ пополнения userpoints без изменения кол-ва товаров http://www.drupal.ru/node/92333, но он не совсем закончен. Надеюсь что мне ответят и помогут в его окончании, хотя для конкретно данной темы, если на сайте не предполагается каких-то товаров, способ рабочий.