【WP-Members】自作プログラムから登録したユーザーを承認済みの状態にする【WordPress】

こんにちは、ryohei(@ityryohei)です!

本記事では、WordPressのWP-Membersを導入しているサイトで、自作プログラムから登録したユーザーを承認済みの状態にする方法をご紹介しています。

WP Membwesのプラグインのフォームから登録されたユーザーは管理者の承認が必要だけど、自作プログラムのフォーム等から新規登録したユーザーは承認済みの状態にしておきたい場合に有効な方法です。

では、解説していきます。

user_metaのactiveを1にしてユーザーを登録すればOK!

WP-Membersをインストールしたサイトで検証した結果、見出しにあるようにuser_metaactive1に設定することで承認済みの状態でユーザーを新規登録することができました。

検証に使用したコードは下記の通りです。

<?php

//ユーザー名
$user_name = 'test_user';

//メールアドレス
$user_email = 'test@test.jp';

//パスワード自動生成
$user_password = wp_generate_password(12, false);

//ユーザー登録
$user_id = wp_create_user($user_name, $user_password, $user_email);

//user_metaのactiveをtrueに設定
update_user_meta($user_id, 'active', 1 );

上記ソースの最終行にあるuser_metaの値を1にして更新することで、承認済みの状態でユーザーを新規登録することができました。

※実環境ではバリデーションチェックもしていますが、その部分は省略しています。

WP-Membetsにも関数が用意されている

一通りWP-Membersのドキュメントに目を通したところ、ユーザー登録時に承認済みに設定する関数が用意されていました。

参考:WP-Members API Functions

上記ページの真中より少し下辺りにwpmem_activate_user()という関数の存在が確認できます。この関数を使って新規登録ユーザーを承認済みの状態にすることができるはずですが、私の環境ではうまく動作しませんでした。

関数の呼び出し方は簡単で、関数が定義されているファイル(wp-members/includes/api-users.php)を確認する限りでは下記のように記述するだけで良いようです。

wpmem_activate_user( $user_id );

新規登録ユーザーを承認済みにするというのはDBのレコードを更新する処理ですので、プラグイン側で用意されている関数で実現できるのであればそちらを使用した方が効率的ですし、安全かなと思います。余力がある方はこちらの方法も試してみてくださいね。

最後に

WP-Membersはあまり使ったことがないプラグインですが、WordPressで簡単に会員制のサイトが作れる素晴らしいプラグインです。私は業務の中で他社で制作されたWEBサイトを改修さあせていただくことがありますが、WordPressで会員制のサイトとくると、このプラグインが使用されているケースが多いです。WordPressを扱っていればいつかは触れることになると思いますので、仕様を把握するためにも、一度テスト環境でWP-Membersを使って会員制のサイトを作ってみるのもいいかもしれませんね。

以上、WordPressのWP-Membersで自作プログラムから登録したユーザーを承認済みの状態にする方法のご紹介でした!

おすすめの書籍

Adobe Creative Cloudを通常価格で購入していませんか?

Adobe Creative Cloud(Adobe CC)はAdobe社が提供するクリエイター向けのサービスです。WEB制作の幅を広げる「Photoshop・Illustrator・XD」Youtuberや動画クリエイターの編集作業に欠かせない「Premiere Pro・After Effects」など全20以上のアプリが提供されており、幅広いプランが用意されています。

コンプリートプランはAdobe CCの全20以上のアプリが使用できるプランです。多くのアプリが使用できるため定価で購入すると年間7万円以上するプランですが、デジタルハリウッドのAdobeマスター講座では「基礎動画教材+Adobe CC コンプリートプラン(12ヵ月)」がセットになって39,980円(税込)で利用できます。定価より安価にAdobe Creative Cloudのライセンスを購入でき、以降のライセンス更新も可能。動画教材で基礎スキルを習得できるので、入門する方にも便利な講座です。詳しくは下記のリンクからチェックしてみてくださいね。

Adobeマスター講座はこちら