WordPressでサイトのベースを作り、カートとしてEC-CUBEを連携させたいという要望がよく寄せられます。サイト内に共存させるだけならともかく、データの連携となると自分でカスタマイズするには敷居が高く感じる方が多いようです。

ただ、システムとしてはWordPressもEC-CUBE3もPHPで書かれたCMSですのでデータ共有はそれほど難しくありません。

WordPressでEC-CUBEのデータを利用

一つの方法としてはEC-CUBEのオートローダーをWordPress側で読み込んでやり、EC-CUBEのネームスペースを利用できるようにするという考えがあります。

他のサイトでEC-CUBEのログイン情報・商品情報を利用したいというようなときに有効です。

ただしEC-CUBEのルーティングが働いてしまうとFrontControllerProviderで指定したアクションが実行されてしまうので、ルーティングを動作させないように気をつけて設定してください。

EC-CUBE3でWordPressのデータを利用

EC-CUBEにWordPressのデータを表示することは比較的簡単です。EC-CUBEでWPの関数などを使用できるようにするにはEC-CUBEのhtml/index.phpでwp-load.phpを読み込んでやれば良いでしょう。これだけでWPの関数やデータが使用可能になります。

 

WP以外にも他のフレームワークやCMSとでもこの方法は使えます。データベースは別々でも大丈夫ですので柔軟な連携方法が考えられますね。

関連するカスタマイズ

Method not allowed / No route found for …エラー... EC-CUBE3でたまに確認されるエラー、Method not allowed エラーについて説明します。Whoops, looks like something went wrong.と怒られてしまった場合は、このエラーのことを思い出して見てください。 EC-CUBEにアクセスする場合、...
動的ブロックの作成方法 動的ブロックとは何か? 動的ブロックとはユーザー、時間帯、表示するページなどによって内容を変えることができるブロックです。EC-CUBE3の場合は独立したURIを持った1つの「ページ」だと考えれば本質に近いと思います。 Twigには別のページをテンプレート内に読み込む仕組みがあり、それを応用...
style.cssに#contents min-height: 100vh;は必要か?... default/css/style.cssに #contents { min-height: 100vh;}という最低の高さ指定があります。 デフォルトテーマでこれを全ページに適用させている理由としては、新規ページ等でコンテンツが少ない場合に、ある程度高さがないと見た目が悪いということだと思...
Bootstrap3のクラスform-controlを取り除く方法(form_widget)... EC-CUBE3.0系ではSymfonyComponentの1つであるFormにより、Twig内では強力な関数form_widget、form_errorsが使用できます。 これらは作成したFormType(定義ファイル)に従って自動で初期データ入力やエラー処理をしてくれるというたいへん便利な...

弊社はEC-CUBE公式インテグレートパートナーです。