投稿日:2021年3月5日

本記事はWP-Membersの全機能について書いています。
記事をよくお読みになり、試行錯誤しながら実際に手を動かすことをお勧めします。
 

以前、会員登録を行い、会員登録を行ったユーザー(出展企業)が記事を投稿できるサイトを作れるか?
さらに、投稿内容のテンプレート化ができるか?
といった相談を受けたことがあります。
検証したことを紹介します。
 

必要なことと使用するPlug-Inをまとめてみました。

必要なこと使用するPlug-In
会員登録機能の実装WP-Members
ユーザー権限の付与User Role Editor
投稿内容のカスタマイズAdvanced Custom Fields
その他のカスタマイズアクションフック追加

 

一度に全ては紹介仕切れないので分けたいと思います。
今回は、会員登録機能の実装を行うPlug-In WP-Membersをご紹介したいと思います。
 

WP-Members
WP-Members をインストールして有効化します。
上図にも大まかな説明は書いてありますが、このPlug-Inはサイトを会員制にします。
会員以外の一般ユーザに対し、閲覧の制限を設けることもできます。
さらに、会員であっても閲覧を制限する、メンバーシップユーザー(有料会員制)を設定することもできます。
 

WP-Members
▲有効化すると設定に WP-Members が表示されるようになります。
 

WP-Members
▲設定を開くと最初は上のような警告が表示されます。
それぞれの指示に従い表示が消えるようにします。
下で説明する警告メッセージを表示しない にチェックしても表示は消えますが、好ましいものではありません。

 WP-Membersオプション

WP-Members
WP-Membresオプションタブ
各項目のをクリックするとマニュアルページ に飛びます。
以下に各項目の詳細を記します。
 

WP-Members
内容をブロック

ブロックするとユーザー登録した者しかページを見ることができなくなります。

投稿ページ、固定ページの両方をブロックすると、非会員では完全に記事が見れなくなります。

抜粋を表示

ログインしていない状態でも見ることができる抜粋を表示します。

ログインフォームを表示登録フォームを表示

内容をブロックで投稿、固定ページをブロックした場合、個別にログイン、登録フォームを表示します。

※下で説明しますが、登録ページやログインページは固定ページにショートコードを利用して作成します。内容をブロックログインフォーム登録フォームを非表示にした場合、どちらも見えなくなってしまいます。

自動抜粋

表題の通りです。
抜粋を自動的に表示するかの設定です。
記事を都度開いてmoreタグを設定する手間が省けます。
ただし、記事に抜粋が設定されている場合はそちらが優先されます。

WP-Members

「続きを読む」へのカスタムリンク(オプション)欄に入力すると文言をカスタマイズすることができます。

 

WP-Members

▲指定した文字数とオプションが反映されました。

 

WP-Members
確認用リンクパスワードリセットリンクはメールに確認用のURLリンクを記載します。
このリンクをクリックしないと認証されません。
WP ログインエラーを有効化にチェックを入れるとWordPressのログインエラーERROR: User has not confirmed their account.を表示します。下図参照。
WP-Members
▲WP ログインエラーを有効化チェックなしの場合。
WP-Members
▲WP ログインエラーを有効化チェックありの場合。
 

WP-Members
プロダクトを有効化する

チェックを入れるとメンバーシップユーザーのみが閲覧できるページが作成できます。
メンバーシップユーザーとは、有料会員のような上位ユーザーのことです。
例えばコンテンツ設定の内容をブロックすると非会員はページを見ることはできなくなります。
会員がログインしてもさらに閲覧の制限を設けたい場合にメンバーシップの機能を有効にします。

WP-Members

▲チェックを入れるとメニューにメンバーシップが表示されるようになります。

 

WP-Members

▲新規追加をクリックします。

 

WP-Members

▲タイトルの入力は英語にしましょう。

日本語を入力するとスラッグが
%e6%9c%89%e6%96%99%e4%bc%9a%e5%93%a1%e3%83%9a%e3%83%bc%e3%82%b8
のようにエンコード表示されてしまいます。

▼最初に英語を入力し、スラッグが英語になってから日本語を入力するようにしましょう。

WP-Members

Assign as default at registration? (optional)

登録時にデフォルトとして割り当てますか?(オプション)

Pre-selected by default for new 投稿

新しい投稿用にデフォルトで事前選択 投稿

Pre-selected by default for new 固定ページ

新しい投稿用にデフォルトで事前選択 固定ページ

 

WP-Members

▲チェックすると詳細が表示されます。

Role Required? (optional)はプルダウン、権限なし購読者寄稿者投稿者編集者管理者、もしくはUser Role Editorで権限グループを作成した場合は、作成したから権限グループから選択できます。。

期限 (オプション)は、ピリオドから選択します。

 

WP-Members

▲和訳したもの。

 

WP-Members

▲制限時に表示されるコメントを記載します。

 

WP-Members

▲ユーザー一覧、ユーザー設定の下部にメンバーシップの項目が追加されます。
有効化すると緑色のチェックが入り、このユーザーがメンバーシップとして有効化されます。
フィールドタブでフィールドを追加でメンバーシップのフィールドを作ることもできます。メンバーシップで登録したユーザーは自動的に上記が反映された状態で登録されます。
これは便利!

WP-Members
 

WP-Members

▲ページを閲覧した場合。会員であっても、このように表示され読めなくなります。

 

メニューを複製する

有効にすると、会員がログイン前と、ログイン後のメニュー表示を切り替えることができます。
例えば、ヘッダーメニューに、ログイン前はログイン新規登録を表示させておき、ログイン後はユーザープロフィールのみを表示させるなどの切り替えができるようになります。

 
WP-Members

▲左、ログイン前。右、ログイン後。
 

WP-Members

外観 > メニュー で作成します。
既存のメニューがある場合は分かりやすいような名前にしておくと良いでしょう。
位置を管理タブに(Logged In)が追加されています。
それぞれ作成したメニューを適用します。

 

WP-Members

▲メニュー構造 ログイン後のメニュー
(Logged In)にチェックを入れます。

 

WP-Members

▲ログイン前のメニュー。

 

WP-Members
WP-Members

▲ナビゲーションメニューに表示させるには、詳細を設定する必要があります。
最後にメニューを保存をクリックします。

 

管理者に通知

登録があった際、管理者へ通知します。

承認登録

登録を管理者の承認制にします。
登録時にも、承認時にもユーザーへ通知が送られます。
未認証の状態でログインしようとするエラーが表示されます。
認証時のユーザー通知にはパスワードが記載されないなど改良の余地があると思います。
ユーザー一覧には下図のように表示されます。有効化をクリックすると認証メールが送信されログインできるようになります。

WP-Members

警告メッセージを表示しない

上で説明している 警告メッセージを非表示にします。

帰属

コメント通りです。

登録用のCAPTCHAを有効化

CAPTCHAを有効化しますが選択するものによって難があります。

 

WP-Members
▲作成した固定ページをここで割り当てます。
 

WP-Members
▲プルダウンの種類。作成した固定ページと直接URLを指定する項目があります。
 

WP-Members
▲固定ページはショートコードで作成します。
ログインページのショートコードは[wpmem_form login]
登録ページ[wpmem_form register]
ユーザープロフィールページ[wpmem_profile]
その他はこちら をご参考ください。
 

WP-Members
WP-Members
▲プルダウンでは、WP-Members Plug-Inに格納されているCSSから選択するようになっているようです。
一番下のURLを指定できますが、カスタマイズしたCSSを利用した方が良さそうです。

 フィールド

WP-Members
登録時に必要な項目を設定します。
表示非表示必須かそうでないか。
ユーザー画面にチェックを入れるとユーザー一覧に表示されるようになります。
ユーザー検索にチェックを入れるとユーザー一覧画面で検索できるようになるとマニュアルには記載されてますが、検索されませんでした。
編集をクリックするとラベルやメタキーの編集ができます。
並べ替えでフィールドの順番を並べ替えられます。
一番左の複数のチェックで、一括で操作をすることも可能です。
設定が完了したら、一括操作のプルダウンから設定を保存を選択し、最後に適用をクリックします。
これを行わないと保存されません。
他のタブと違って明確な保存ボタンがないので注意が必要です。
 

 ダイアログ

WP-Members
左のタイトルは日本語ですが例文は英語になっています。
タイトルに従いダイアログメッセージを入力してゆきます。

 メール

WP-Members
新規ユーザー登録時パスワードリセット時ユーザー名の回復時などのメールの内容を入力します。
シュートコード を使用し編集することができます。
注意として、入力し終わっても、例えば、後から管理者に通知認証登録の設定をすると、それらの入力欄がデフォルト(英語)で追加されます。
「あれ? さっき全部入力したのに???」ってな感じになるのでお気をつけください。
 

まとめ

設定する項目は多いですが、その分機能が充実しています。
しかも、これだけの機能が無料で利用できるとは驚きです。
それぞれの設定で、どのようなことができるのか、トライ&エラーを行うことが非常に重要だと思います。
使ったことはありませんがWooCommerceと併用するとさらに威力を発揮すると思います。
 
冒頭にも書きましたが、今回はUser Role EditorAdvanced Custom Fieldsアクションフックを併用したユーザー投稿サイト作成検証の第一弾です。
以降、続きを書いてゆきます。
 
なお、WP-Membersでユーザー登録時、User Role Editorで作成した権限を自動で割り振る記事を書きました。


 

併せてお読みいただければ幸いです。
 
最後まで読んでくださりありがとうございました。
 

WordPress関連記事

Relevanssi WordPressの検索を強化するPlug-In 

八王子WordPress MeetupでLTをさせていただきました。 

Search & Filter 無料の絞り込み検索Plug-In! 

WordPressでPodcast配信を検証してみる。 

Amazon LightsailでWordPress運用を考える 

WordPress 複数カテゴリーで1つだけ表示させる方法 

AWS for WordPressでAmazon Pollyを検証してみる。 

カスタムフィールドを便利に! Advanced Custom Fields 

便利な機能 カスタムフィールド 

Contact Form 7とQRコード。 

WordPressで固定ページ一覧をトップページに表示した話。 

ウェブフォントノススメ 

 

Pocket