concrete5 CMSの「会員登録機能」「マイページ機能」でできることのまとめ

菱川拓郎
菱川拓郎

concrete5 が会員制サイト構築機能が標準で搭載されているCMSであることはご存知の方が多いのですが、具体的にどういう機能なのか?は実際に色々と触ってみないと分からないことが多く、よくご質問をいただきますので、まとめてみました。

会員登録機能

concrete5 は実際に会員制サイト構築の用途で使われることが多く、標準で必要十分な会員登録機能を揃えています。

会員登録の有効化

concrete5 を会員制サイトとして使うのは簡単で、「アカウントオプション」ページで「来訪者にメンバーとして登録することを許可しますか?」の設定でオフ以外を選ぶだけです。デフォルトは「オフ」で、登録は許可されていません。「認証」を選べば、会員登録フォームで必要事項を入力し、メールアドレスに確認URLが届き、クリックすると会員登録が完了する、というよくある会員登録の流れが実現できます。

アカウントオプション

会員登録情報(ユーザー属性)の設定

会員登録の際に入力させる個人情報は、ユーザー属性機能で設定できます。ユーザー属性とは、concrete5で管理するユーザーアカウントに、カスタムフィールドのような追加情報を持たせることができる機能です。テキストや日付、URLなど様々な属性情報を設定することができます。

ユーザー属性を編集

このユーザー属性は、オプション設定が可能です。会員登録時に入力させるかどうか、入力させるとして必須項目にするかどうか、マイページで編集可能かどうか、などが設定できます。全て管理画面で設定でき、運用中に変更することも容易です。会員登録は簡潔にし、マイページではより多くの個人情報が編集できるのも、会員制サイトにありがちなありがたい設定です。

ユーザー属性オプション

マイアカウント(マイページ)機能

会員登録したユーザーには、マイアカウントページが作成されます。デフォルトでは殺風景なテーマが適用されていますが、もちろん独自デザインのテーマに変更することができます。また、標準ではワークフローの通知や自分が描いた下書きページの一覧のブロックが置いてありますが、どんなブロックがマイページに置いてあるかも、自由に編集できます。

マイアカウント

マイアカウントページの下層には、個人情報の変更画面、プロフィール画像のアップロード画面、プライベートメッセージの受信箱が用意されています。カスタマイズでページを追加することもできます。

会員セグメントの管理

サイトの会員に、いくつかの階層を持たせたいのもよくある要件です。concrete5では、グループを使ってユーザーアカウントをいくつかのセグメントに分けて管理できます。

グループを追加

ユーザーを条件に従ってグループに所属させることを自動化する仕組みもあらかじめ用意されています。標準では「サイトに登録した時」「サイトにログインした時」という条件が用意されていますが、決められたファイルに少しPHPで条件分岐などを記述すれば、自由な条件でグループ間を移動させることができます。

一定の時間経過や特定のタイミングでユーザーをグループから外すこともできますので、「30日間のお試し登録」のような挙動も一切追加開発なく実現できるのが嬉しいポイントです。

グループの自動化
アクセス制御

会員登録しないと見れない非公開サイトにすることができます。サイト全体は誰でも閲覧できるが、サイト内の一部のみは登録しないと見れない、もしくはページの中の一部のみ登録しないと見れない、といった制御も可能です。

サイトアクセス

セキュリティ

concrete5 はアメリカ政府系のコミュニティサイトとして採用されていることもあり、多くのセキュリティ要件に標準で対応できる機能を取り揃えています。

パスワード条件の設定

ユーザーが指定するパスワードについて、最低文字数や、使用する文字の種類などのルールを定める機能が標準で用意されています。同一パスワードの再設定の禁止もできます。正規表現を利用して、さらに複雑なルールを指定することもできます。

パスワード必須条件設定

IPブラックリスト

ブルートフォースアタックの対策として、なんどもログインに失敗するIPアドレスを自動的にブロックする機能が用意されています。特に攻撃のひどいIPアドレスを手動で永久ブロックすることも可能です。

ユーザーの自動ログアウト

セッションの横取りを防ぐため、IPアドレスが急に変わったりしたユーザーを強制的にログアウトさせることができます。また、ブラウザを開きっぱなしにして他人が操作できてしまうのを防ぐため、一定時間なんのアクションもないユーザーをログアウトさせることもできます。

自動ログアウト

ユーザーの自動無効化

一定期間ログインがないユーザーや、不審にログインに失敗したユーザーを無効化し、ログインできなくすることが可能です。

ユーザー自動無効化

グローバルパスワードリセット

万が一、外部からの不正ログインが発見された際に、緊急的に全ユーザーアカウントのログアウトさせた上で、各自のパスワードを強制的に変更することができます。

その他の会員制サイト関連機能

公開プロフィール

TwitterなどのSNSのように、登録ユーザーのプロフィールが他のユーザーにも見えるようにするかどうかを選択できます。

公開プロフィール

コミュニティーポイント

ログインや特定の操作をトリガーに、ユーザーにポイントを付与することができます。買い物の際にたまるポイントのイメージではなく、ゲームの経験値のようなものと捉えると理解しやすいかと思います。特定のポイント数が溜まったらプレミアム会員になる、などのカスタマイズのベースとして用意されている機能です。

ログイン後スタートページ

ログイン後にトップページに遷移するのか、ユーザーのマイページなのか、といった設定が行えます。

認証タイプ

TwitterとFacebookによるSNSログインに標準で対応しています。そのほかにも、OAuth認証に対応しているSNSであれば、カスタマイズで容易に対応できます。

Captcha設定

botによる会員登録を防ぐため、会員登録時に画像認証をつけることができます。SecurImageとreCAPTCHAのライブラリを標準でサポートしており、独自に拡張も可能です。

退会機能

標準では用意されていませんが、弊社開発のQuit Profileアドオンをご購入いただければ実現可能です。