PR

WordPressで会員制サイトを作る前に知るべき3つの落とし穴

WordPressを学ぶ

こんにちは。

会員サイトを作るとき、WordPressをベースに会員サイト化プラグインを利用するという手法があります。学習コストや制作コストが低く、それでいて高単価の案件を受託できるため比較的人気な手法のように思います。

しかしその仕組みをよく理解せずに利用すると、作ってからしばらく経った時に大きな問題を引き起こす可能性があります。今回はそのリスクと解決策、代替案を紹介します。

理由1:長期的な運用に耐えないものが多い

実は最近実際の案件で出会ってこれを実感しました。

何が問題なのかというと、独自テーブルを作らないプラグインが結構あるんです。会員情報などを綺麗に保存するためのデータベースを作らないということです。Ultimate Member(無料版)など有名なプラグインでも該当することがあります。昔からあるものがそうなっていることが多いですね。

独自テーブルを作らないとなるとWordPressのデフォルトで存在している保存場所、wp_postmetaやwp_usermetaというカラムに際限なくデータを入れてしまいます。これが非常に厄介。これらのデータが肥大化すると、例えばページの読み込み速度が異常に遅くなったり(1ページ開くのに20秒以上かかることも!)、ひどいと管理画面にログインができなくなったりします。

データが肥大化した時にスケーリング(サーバーの性能をあげたり、複数サーバーを立てて負荷分散)することも、AWSGCPなどのクラウドに比べればあまり得意ではありません、

そしてこの問題をよりややこしくしているのが、データが少ないときは問題ないように見えることです。テスト時にそれほどダミーデータを用意せずに動作させるとこれらの問題が隠れてしまうので要注意です。

wp_postmetaなどのカラムは確かにプラグインや独自機能追加時のデータ保存場所として用意されている側面があります。しかし会員制サイトのようにユーザーがデータを登録するケースでは今回のようなことになります。

理由2:リプレイスも大変

上記の問題が発生したとき、基本的な解決策はリプレイスになります。

  • プラグインを別のものに入れ替える
  • そもそもWordPressでない技術を使う

などです。この時に困るのが、データの移行です。前述のとおりwp_postmetaにデータを際限なく入れてしまうのですが、データの分類も何もなく入ってしまいます。単純にデータが重いこととは比べ物にならないくらいに問題です。

例えば次の画像のような状態になってしまいます(画像1)。例としてスプレッドシートで作りました。

無秩序にデータを保存した例
画像1

画像のようにExcelやスプレッドシートで分類なく情報が入っていたら困りますよね。会員情報が1行にまとまっておらずバラバラに保存されています。

本来なら会員情報シートに綺麗にまとまっているべきです(画像2)。各行が各ユーザーに対応している形です。

適切にデータを保存した例
画像2

画像1の状態ではデータベースの情報を綺麗に整理するのに非常に時間がかかります。その上移行したものが正しいか確認するにも大変なコストがかかります。

理由3:根本的にWordPressは会員制サイトに向かない

前提としてWordPressはブログツールとして開発が始まっています。当初は会員制サイトを作ることは想定されていませんでした。確かに開発が進みある程度は会員制サイトの運用にも耐えられるようになっていますが、やはり限界があります。

これまで触れてきたデータベースの問題だったり、セキュリティ的にもやや弱い点など問題を挙げればキリがありません。

したがって、初めから大規模のサービスになることを目指しているなら他の選択肢もよく吟味した方が良いでしょう。

対策1:独自のテーブルを作るプラグインを選ぶ

では対策です。少なくとも独自テーブルを作るプラグインを選びましょう。ほとんど有料になりますが、総合的に見れば課金を視野に入れた方がいいでしょう。

有名どころのプラグインを表にまとめますが、独自テーブルのないものはまず候補から外しましょう。個人的に調べた中ではMemberPressとPaid Memberships Proの有料版が良さそうです。機能が豊富な上に公式もしくは有志により日本語対応しているようです。まずはこの2つからリサーチをするのがおすすめです。

プラグイン名(バージョン)無料/有料/フリーミアム独自テーブル公式サイトURL
MemberPress有料あり(mepr_プレフィックス)memberpress.com
Paid Memberships Pro(無料)フリーミアム(コア無料)あり(pmpro_テーブル)paidmembershipspro.com
Paid Memberships Pro(有料)有料あり(pmpro_テーブル)paidmembershipspro.com
Restrict Content(無料版)無料なしwordpress.org/plugins/restrict-content
Restrict Content Pro(有料)有料あり(v3.0以降、カスタムテーブル導入)restrictcontentpro.com
Ultimate Member(無料)フリーミアム(コア無料)任意(会員検索用に um_metadata テーブル使用可)ultimatemember.com
Ultimate Member(有料)有料任意ultimatemember.com
WishList Member有料あり(wlm_/wlcc_プレフィックス)wishlistmember.com
WooCommerce Memberships有料(WooCommerce拡張)なし(カスタム投稿タイプ&メタ利用)woocommerce.com/products/woocommerce-memberships
s2Member(無料)フリーミアム(コア無料)なしs2member.com
s2Member Pro有料なしs2member.com
WP-Members無料(拡張有料あり)なしwordpress.org/plugins/wp-members

対策2:WordPress以外の技術を使う

そもそもWordPress以外のものを使うこともちゃんと考えた方がいいでしょう。また、正直言ってしまうと会員制サイトの案件に対してWordPressを候補に入れる時点で予算の問題やエンジニアの技術力問題があるケースが多いため「それができればやってる・・・」と思うかもしれません。

一方そういったケースにおいて前述の問題が発生したとき、結局同様の問題にぶつかります。

  • 予算/技術力がないからリプレイスがうまくできない
  • 技術力がないからプラグインの選定を間違えてしまった
  • etc

などでしょうか。クライアントの課題解決のためにも、総合的に適切な手法を提案できるように考えておきましょう。

よくある質問

Q
無料のWordPress会員制プラグインは使っても問題ないですか?
A

小規模・短期的な運用であれば使えるケースもありますが、長期運用には向きません。多くの無料プラグインは独自テーブルを使わず、データ肥大化や速度低下の原因となります。

Q
有料プラグインでおすすめはありますか?
A

MemberPressやPaid Memberships Pro(有料版)は独自テーブルを使用しており、長期運用やデータ管理に優れています。特に会員情報の分類が明確で移行にも有利です。

Q
WordPress以外の選択肢にはどんなものがありますか?
A
  1. ヘッドレスCMS(例:microCMS
     → フロント自由・高速だが、認証は別途開発が必要なことも。
  2. フルスタック開発(例:Next.jsLaravel
     → 自由度が高く本格的だが、開発コストは大きめ。
  3. SaaS型
     → ノーコードで最短リリース可。カスタマイズやデータ移行に制限がある

目的や予算、将来の拡張性に応じて選びましょう。

Q
会員制サイトを作るなら最初に何から検討すべきですか?
A

「規模・継続性・予算・担当者の技術力」を基準にプラットフォーム選定を行うべきです。WordPressを選ぶ場合は、必ず独自テーブル対応プラグインを調査し、将来的な移行も視野に入れてください。

この記事を書いた人
小林 秀樹

Web制作フリーランス9年目|ディレクター・フロントエンドエンジニア
「世界一初心者に優しい」→セカヤサ。

コーポレートサイトやLP、メディア立ち上げまで幅広く対応。コーディングを軸に、UX設計・SEOライティング・サイト運用まで一貫対応。

法律系オウンドメディア立ち上げ支援では、特定のキーワードでのSEO1位を実現し問い合わせ獲得に貢献。また大手専門学校サイトの大規模リニューアル(100ページ超)でのディレクションと実装の両面の経験あり。

最近では、AIツールによる自社サービスUI制作や、ChatGPTを活用した記事執筆フローの構築など、AI時代に対応した制作手法の実践にも注力している。

zenn:
https://zenn.dev/hideki_climax

制作実績:
https://tan-band-c66.notion.site/37abe7077b184b338fd8f53f6873ca1d

小林 秀樹をフォローする
WordPressを学ぶ
スポンサーリンク
シェアする
小林 秀樹をフォローする

コメント

タイトルとURLをコピーしました