WordPressでサイトのベースを作り、カートとしてEC-CUBEを連携させたいという要望がよく寄せられます。サイト内に共存させるだけならともかく、データの連携となると自分でカスタマイズするには敷居が高く感じる方が多いようです。
ただ、システムとしてはWordPressもEC-CUBE3もPHPで書かれたCMSですのでデータ共有はそれほど難しくありません。
WordPressでEC-CUBEのデータを利用
一つの方法としてはEC-CUBEのオートローダーをWordPress側で読み込んでやり、EC-CUBEのネームスペースを利用できるようにするという考えがあります。
require_once ("./autoload.php"); // 配置方法によってパスは異なります。
他のサイトでEC-CUBEのログイン情報・商品情報を利用したいというようなときに有効です。
ただしEC-CUBEのルーティングが働いてしまうとFrontControllerProviderで指定したアクションが実行されてしまうので、ルーティングを動作させないように気をつけて設定してください。
EC-CUBE3でWordPressのデータを利用
EC-CUBEにWordPressのデータを表示することは比較的簡単です。EC-CUBEでWPの関数などを使用できるようにするにはEC-CUBEのhtml/index.phpでwp-load.phpを読み込んでやれば良いでしょう。これだけでWPの関数やデータが使用可能になります。
require_once ("./wp-load.php"); // 配置方法によってパスは異なります。
WP以外にも他のフレームワークやCMSとでもこの方法は使えます。データベースは別々でも大丈夫ですので柔軟な連携方法が考えられますね。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。