
例えば、自分の複数のクライアントに向けてコンテンツを発信する時など、メンバー別に表示したいコンテンツを分けたいことがあります。
WordPressでも、プラグインの活用とちょっとした工夫を凝らすことで、メンバー別にコンテンツを振り分けられるサイトを実現することができます。
目次
メンバー別コンテンツサイトを作るメリット
通常、自分のクライアントに向けた個別コンテンツを発信する場合、メール本文に文章として記載したり、レポートや資料をPDFなどにまとめてコンテンツ化して添付したり、メンバーの数だけ専用サイトを作ったりと手間がかかってしまいます。
メンバーが各自ログインし、ログイン情報に基づいた閲覧権限が与えられたコンテンツを表示するサイトを作ることで、あなたは1つのサイトの運営だけで、複数のクライアントの個別サポートができるようになります。
複数のクライアントに重複した内容を表示する際も、閲覧権限を変えるだけで良いので二度手間を減らすことができます。
クライアント側も、自分専用のページが存在していることで「個別サポートをしっかりされている」という満足感を感じることができるので、結果的によりあなたの会社・店舗への信頼度をアップさせることができます。
メンバー別コンテンツサイトを作る手順
権限カスタムタクソノミーを追加する
権限登録用のカスタクタクソノミーを用意します。
既存のカテゴリーを利用しても良いのですが、カテゴリーの数が増えてくると管理が大変になってくるので、記事のカテゴリーと閲覧権限用のタクソノミーは別個に分けておいた方があとあと楽です。
function.php
メンバーページ(固定ページ)用テンプレートを作る
固定ページ用のテンプレートを作ります。
といっても、そんなに複雑な構造を作るというわけではなく、単純に固定ページコンテンツ表示エリアの上に、ユーザーログインフォームを実装してあげるだけです。
これによって、非ログイン時にはコンテンツが表示されず、ページ上のログインフォームでログインするとコンテンツが表示されるページが出来上がります。
非ログイン時
ログイン時
固定ページのテンプレートに、以下のログインフォーム用のプログラムを追記します。
ログインフォーム用プログラム
作成した権限クタソノミーに閲覧権限を付与する
閲覧権限は「User Access Manager」プラグインを使って付与します。
プラグインを使った権限グループの追加は、以下の記事を参考にしてください。
権限タクソノミーに新しいタームを登録し、該当する閲覧権限を付与しておきます。
固定ページを作る
固定ページを作成します。
ここで作成する固定ページのURLは、ログインユーザー情報のニックネーム名と同じ文字列を設定しておきます。
また、固定ページの権限カスタムタクソノミーで、先ほど作ったタームを選択しておきましょう。
「トップページ」へのリンクをカスタマイズする
上で作成した固定ページ(http://~~~.com/member1)を、メンバー用のトップページとして扱います。
ロゴクリックやグローバルメニューでトップページリンク(http://~~~.com/)を貼っている場合は、ユーザーのログイン情報を取得して、ログイン情報に設定されたニックネーム名の固定ページに飛ばすようにカスタマイズする必要があります。
ログインユーザー情報に基づいてトップページURLを設定する記述
投稿記事を追加する
試しに記事を追加してみましょう。
権限カスタムタクソノミーへのチェックを入れる。
メンバー用固定ページに記事のURLを貼り付ける
先ほど作った記事の動線として、固定ページに記事のURLを貼り付けます。
こうすることで、メンバー用トップページ(固定ページ)からメンバーがアクセスできる記事への動線が出来上がります。
表示を確認する
ログイン時と非ログイン時で閲覧制限の切り替えができることを確認しましょう。
応用
上の手順では、記事のリンクは固定ページに手動で貼り付ける内容でお伝えしてきました。
しかし、記事数が増えてくるとそれも非常に面倒になってきます。
そういう時は、固定ページで設定した権限カテゴリーに基づいて、同じ権限カテゴリーの投稿記事を自動出力するプログラムを実装すると、閲覧権限がある投稿記事が全て自動で表示されてくれるので便利です。
権限カテゴリーをキーとして投稿記事を取得するプログラム