WordPressで構築するショッピングカートの落とし穴

WordPressを使って「ショッピングカートの仕組みができない?」ということを、最近よく相談されます。

WordPressには「ショッピングカート」をするためのプラグインが、結構な数出回っていたりします。

有名なのは「Welcart」というプラグインでしょうか?
また、有料とはなりますが日本人の開発した、カートのプラグインなどもありますね。

しかしながら、僕らのほうでは、こういった相談に対して全て

「WordPressでやるのはやめた方が良いですよ」

とアドバイスさせていただいています。

それはなぜか!?

▼役割分担を超えてはいけない

そもそもWordPressは、ブログ記事を書くシステムとして、10年ほど前から使われてきました。

今はCMSとしての側面が大いに注目され、ブログだけでは無くコンテンツを管理する仕組みとして、いろいろなサイトで活用されています。

機能面でもここ2〜3年で、CMSとして活用するための「カスタム投稿」や「カスタム分類」といった機能が増え、非常に複雑なサイトも構築できるようになりました。

しかしながら、あくまでWordPressの本質は、「コンテンツを管理する仕組み」であって、物販の仕組みを管理したり、顧客を管理したり、売り上げを管理する仕組みではありません。

1つのシステムに何でもかんでも詰め込もうとすると、軋轢が生まれ、必ずどこかに破綻が生じます。

良い例が「不動産プラグイン」です。

大変高機能なプラグインで、不動産検索サイトなどを構築されたい!という方から、
多数のお問い合わせを頂きます。

しかし、このプラグインには1つ落とし穴があります。
それは「パーマリンク設定がデフォルトしか使えない」ということです。

※パーマリンク設定がデフォルトの場合、URLが以下のようになります。
http://example.com/

これはどういうことかというと、新規にこれからWordPressで構築する場合には良いのですが、今まで投稿毎にURLを設定して運用してきたサイトの場合、今までのURLが一切使えなくなってしまうと言うことを意味します。

また、SEO上でもURL設計は大きな意味合いを持ちます。
このURLがWordPressのデフォルトしか使えない、というのは大きなデメリットになってしまいます。

▼ショッピングカート=非常に複雑である

以上のことを踏まえ、あらためてショッピングカートの仕組み、について考えてみましょう。

ショッピングカートといえば、ただ商品がカートに入れられて、それを購入できれば良い、という単純なものではありません。

基本的に下記のようなことがしたい!
という場合が多いでしょう。

・商品毎に送料の自動計算をしたい
・発送地域毎に送料を分けたい
・○○円以上の購入で送料を割り引きしたい
・会員ランクを設けて割引をしたい
・商品の在庫管理をしたい
・決済方法をいろいろ用意したい
・売り上げを管理したい
・顧客管理をしたい
・商品毎の売れ行きを管理したい
・etc…

どうでしょうか。
すでに、上記の機能だけで、1つのシステムができあがってしまいますね。

現にショッピングカートのシステムというのは、以前よりかなりの数のサービスや、プログラムが開発され提供されてきています。

それだけ、内容が複雑で、単純では無いと言うことです。

特に売り上げ管理や在庫管理の仕組みというのは、ウェブ上のコンテンツを管理するという仕組みにとどまらず、「基幹システム」といってもいいほど、重要な仕組みになってくることが想像できます。

▼1つのシステムに集約することのリスク

そんなショッピングカートの機能を、WordPressにまとめたらどうなるでしょうか。

すでにコンテンツ管理の仕組みを超え、売り上げや在庫を管理するための、基幹システムとなってくることが想像できます。

それを無理矢理WordPressに取り付けたら、どうなるでしょうか。

・ユーザーの権限管理をしっかりしないと、売り上げなどの情報が漏れる可能性がある

・商品の管理や送料の管理、売り上げの管理など非常に多くの機能を追加するため、未知のバグが混入する恐れが多くなる

・プラグインまたは本体がアップデートして、どちらかの機能に不具合が存在したら、単純にサイトが見られなくなるだけでなく、基幹システムも使えなくなると言うことに!

・プラグインのバグなどでWordPressのデータベースが消失・改ざんなどされてしまった場合に、売り上げや顧客データさえも消失していまうことになる

昨今、WordPressを狙う不正なプログラムが、ウェブ上に多数存在しています。

もし、上記のような重要な情報を管理しているWordPressが不正アクセスの対象になったら?

何らかの要因で、データベースが消えてしまったら??

WordPressがコンテンツだけを管理しているなら、最悪ウェブサイトが消えてしまったり、使えなくなるだけで、商品の販売や売り上げ管理には、影響を及ぼさないでしょう。

しかし、WordPressがそこまでも担っていたら・・・!?
考えただけでも、ゾッとしませんか?

▼適材適所ということ

スマートフォンがなんでもできるからといって、スパゲティを食べるときに使う人はいません。(いたらごめんなさい!)

スパゲティを食べるときはフォークを使うように、カートシステムを使うときは、ASPで提供しているカートサービスを利用したり、ECCUBEといった専門的なソフトウェアを使う方が、より便利で、拡張性の高いシステムを構築できます。

いくらWordPressが便利だからといって、何でもかんでも1つにまとめてしまうのは、セキュリティ的にもプログラム的にも問題になります。

適材適所、という単語をよく思い出して頂き、そのシステムの役割分担を超えないようにするのが、一番良い方法になります。

▼では、どうすればよいの?

スマートフォンのカメラのように、高画質を求めるわけでは無いけど、どこでも使えるような簡単なものでもいいや!という場合は、WordPressに決済の仕組みを用意するのも1つの方法です。

ただし、その場合専門のカートのような、売り上げ管理、顧客の管理、送料の地域別設定、会員ランク毎の割引といった、複雑な機能はあきらめるのが得策です。

・会員登録の際に決済を行う
・有料ニュースサイトで、
1記事=○円で決済ができるようにする
・ポイントを決済で購入できるようにし、ポイントを使ってサイトの機能を使えるようにする

上記のような例であればWordPressで行っても問題無いでしょう。

WordPressの可能性をより高め、さらに便利に使えるようにします。

上記以外の、複雑な商品販売の仕組みや、顧客管理の仕組みなどを導入する場合、別システムも視野に入れて検討しましょう。

昨今ではASP型のサービスで、既存のWordPress等に簡単に商品販売の仕組みを組み込むことができるサービスも増えていますので、そういった仕組みを使うのも1つの手段です。

WordPressとECCUBEの連携というのも、以前に実現したことがあります。

フロントエンドはWordPressでコンテンツを管理し、ショッピングはECCUBEで管理するという、理想的なシステムです。

僕らは基本的にWordPressの専門サービスを展開していますが、ECCUBEを専門サービスを行っている、非常に心強いパートナーがいますので、そういったことも実現可能になっております。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

ABOUTこの記事をかいた人

インスパイアデザインの取締役兼、エンジニア。WordPressのテーマ・プラグイン開発を年間100件以上、独自のフレームワークを用いて開発をしています。