Sitecoreで会員制サイトを構築するポイントを解説
- CMS
- 運用
- 開発
会員制サイトは一般的に会員との関係性をより強くでき、ロイヤルティに応じて会員情報の出し分けができれば会員により特別感を感じてもらうことができます。
Sitecoreでこのような会員制サイトを構築することができ、会員情報の管理やログイン機能の実装が可能です。
会員情報を持たせることでSitecore標準で備えているMA機能も利用可能となります。
この記事ではSitecoreで会員情報を管理することのメリットや会員情報がどのように管理されているのか、会員情報の取り扱いの注意について紹介します。
目次
Sitecoreで管理されている会員情報の構成について
Sitecoreでは会員情報がユーザーマネージャー画面で確認できるプロファイルとサイト訪問者にSitecoreが自動で割り当てるコンタクトの2つ存在してそれぞれ用途が異なります。
プロファイルとコンタクトの違いは次の通りです。
- プロファイルとは
プロファイルでは標準でメールアドレスやパスワードの管理されており、Sitecore管理画面へのログインや、会員制サイトをSitecoreで構築した際のログイン時に利用します。
プロファイルで管理できるユーザー属性はSitecore管理画面で拡張可能なため、CRMの会員情報に対応するよう項目を作成することができます。
プロファイルの中身のデータはユーザー名とメールアドレス以外DB上で暗号化された状態で保存されているためセキュリティ対策もしっかり考慮されています。
- コンタクトとは
サイトへ訪問した一人ひとりに払い出されるデータでSitecoreがサイト訪問者の行動データを蓄積する際に利用されます。
SitecoreはパーソナライズやABテストなどのマーケティング機能を備えていますが、それらはコンタクトを利用して動作しています。
コンタクトもDBで管理されており、サイト訪問者にコンタクトが紐づけられるとCookieにコンタクトの一意識別子(コンタクトID)が登録されます。
ログインなどサイト側が個人を特定した際は未ログイン時のコンタクトと既存のコンタクトがマージされて未ログイン時のサイト行動データも既存のコンタクトのデータに統合されます。
コンタクトは標準で姓、名、メールアドレスを管理可能ですが、プロファイルと同じく項目の拡張が可能です。
SitecoreのEmail Experience Manager (EXM) を利用する場合、コンタクトのメールアドレス宛にメールが送信されます。
プロファイルとコンタクトが分かれているからこそ、未ログインユーザーに対してもパーソナライズやサイト行動のデータ追跡が可能となります。
Sitecoreで会員情報を管理するポイント
- プロファイルとコンタクトで共通項目を持っている場合、片方のデータが更新された時にもう片方のデータが自動で更新されないためユーザー情報が更新されるタイミングで両方のデータを更新する必要があります。
- SitecoreのプロファイルはASP.NETのプロファイル機能を利用しており、ユーザー名とメールアドレス以外は暗号化されています。
プロファイルはユーザーマネージャー画面で検索できる項目はユーザー名とメールアドレス欄のみです。
そのため例えば特定の都道府県に住むプロファイルを検索する必要がある場合はプロファイルのユーザー属性とは別に暗号化されていない状態で保持し、検索機能も作成する必要があります。 - コンタクトもDBで管理されていますが、姓、名、メールアドレスはJSON形式で格納されているためコンタクトを検索する時に姓、名、メールアドレスを利用するとlike句の利用が必須となるためレスポンスが遅い場合があります。
そのためコンタクトを検索する際は会員IDなどの一意識別子とコンタクトIDが紐づけられているテーブルを利用してコンタクトIDを特定した後にそのコンタクトIDを利用して検索した方が早いケースがあります。
まとめ
Sitecoreで会員情報を管理することのポイントを紹介しました。
プロファイルとコンタクトの2種類あるためそれぞれの違いを意識してサイトを構築する必要があります。
これらを理解して会員制サイトのメリットを享受することができるのでご興味あるかたはWEBSASまでご連絡お待ちしております。