サブスクリプションタイプの会員制ダウンロードサイトを構築

はじめに

サブスクリプションタイプについて自分がユーザーになった立場で考えてみて思うのは、定期的なクレジットカードでの引き落としのプレッシャーです。

このプレッシャーが無いサブスクリプションタイプの製品を1つ購入しています。それは、Microsoft Office 365 Solo です。この製品は、家電量販店で1年有効のカードを購入してきて、そこに書いてあるプロダクトキーを入力するだけです。期限切れになれば使用できなくなりますが、使用したければ、再度家電量販店で購入し、プロダクトキーを入力するだけです。期限切れになった後、1~2か月使用する機会がなければその間は購入する必要が無く必要になったら再購入するという事です。

ユーザーに継続に関する自由を与えるサブスクリプションタイプとでも称しましょうか?もちろんクレジットカードでサブスクリプションを切る事もできますが、つい期限を忘れて継続使用などという事があります。スポーツジムなどの会員になっても、ほとんどいかずに引き落とされているなどどいう話を良く聞きます。

以下で紹介するサブスクリプションタイプは、継続に関する自由を与えるサブスクリプションタイプです。会員登録時にユーザーに期間分の支払いをいただいて、期間が過ぎたらユーザー登録が抹消されます。再度サービスを受けたければユーザーが再登録し支払うというしくみです。

プラグイン

以下のプラグインを使用します。すべて無料で WordPress 公式のものです。

ユーザーを一定期間登録
メールアドレスのみのユーザー登録
PayPal での課金


Stripe での課金
ダウンロード管理

仕組み

Download Manager は、ログインしているユーザーの権限でダウンロードファイルをアクセス制御できます。ユーザーを購読者権限で登録させ、ダウンロードファイルを購読者権限にしておけば、購読者権限のユーザーのみダウンロードさせるという仕組みを作れます。

User Period Register は、仮登録機能が付与されています。仮登録時は独自の権限なので、 Download Manager でダウンロードできません。仮登録させログインしていただき、ダッシュボード上での課金の際に、本登録として購読者権限を付与させ、期間登録させます。仮登録と本登録の期間は、設定できます。デフォルトは、仮登録1時間、本登録1年です。期間が過ぎると、自動でユーザー登録が削除されます。

Download ManagerUser Period Register は、権限を自由に設定できます。当たり前の事ですが、ダウンロードファイルの権限と、本登録の権限を合わせなければなりません。

User Period Register は、管理者画面のユーザー一覧から権限を変更した場合に連動するようになっています。これは、特別なユーザーに課金無しで権限を与える際などに使用できます。

Simple PayPal PaymentSimple Stripe Payment は、User Period Register に課金機能を付与するものです。User Period Register 専用というわけでは無くフィルターを持っているので、User Period Register 側から呼び出しているだけです。

実際の流れ

Download Manager を有効化しダウンロードファイルを Attache File へアップロードします。Allow Access: を Subscriber(購読者)権限にします。
Downloads -> All Files を見て、ショートコードをコピーします。
投稿します。コピーしたショートコードをペーストします。
Simple PayPal Payment の設定です。今回は10,000円に設定します。
Simple Stripe Payment の設定です。今回は10,000円に設定します。
User Period Register が無効の場合
User Period Register を有効化すると、「だれでもユーザー登録ができるようにする」にチェックが入り、新規ユーザーのデフォルト権限グループは、仮登録になります。再び無効化すると元に戻ります。
User Period Register の設定です。仮登録の有効時間は1時間、支払い済みのユーザーの権限は購読者、支払い済みのユーザーの有効日数は1年とします。
通常の WordPress の登録フォームから登録します。User Mail Only Register を有効化するとメールアドレスのみの登録となります。また、利用規約のチェックが入ります。
ユーザーにメールが届きます。通常の WordPress のユーザー登録と同じく、パスワードリセットへのリンクからアクセスします。
パスワードをリセットしたら、そのパスワードと登録したメールアドレスでログインします。
ログイン画面です。まだ仮登録となっています。投稿した「ダウンロード」にアクセスしてみます。
ダウンロードできない状態になっています。この辺のメッセージは Download Manager で自由に変更できます。
管理者権限でログインしユーザー一覧を見てみると、権限が仮登録になり、有効期限が1時間後になっています。
仮登録ユーザーのダッシュボード上で課金してみます。
登録済みになります。投稿した「ダウンロード」にアクセスしてみます。
ダウンロードできる状態になっています。
管理者権限でログインしユーザー一覧を見てみると、権限が購読者になり、有効期限が1年後になっています。
有効期限は wp-cron で登録されています。wp-cron を管理できるプラグインから実行してみます。
wp-cron が実行され、wp-cron が削除されます。
wp-cron が実行されると、ユーザーが削除されます。逆にユーザー一覧画面からユーザーを削除すると、wp-cron も削除されるようになっています。
ユーザーが削除されると登録者にメールが届きます。

終わりに

売り側には定期的な収入が保証されるわけではないので厳しいシステムかもしれませんが、ユーザー側にとってはとっつき易いシステムだと思います。通常のサブスクリプションよりもユーザーが流入しやすいのではないでしょうか?