SEO対策 プログラミング

EC-CUBE4内にWordPressを設置(共存)する方法

EC-CUBE4 PHP Symfony Twig WordPress
EC-CUBE4内にWordPressを設置(共存)する方法
今回使用したバージョン

EC-CUBE4.0.5

WordPress5.6

※EC-CUBE4、WordPressのカスタマイズは自己責任でお願いします。また、現在稼働中のサイトで試す際には、必ずバックアップを取ってから行なうようにしてください。

 

EC-CUBE4とは

ネットショップを作るとなれば、様々なサービスが出回っていますが、自社運営をするとなればCMSを活用したものが多いでしょう。その中でも良く候補として挙げられるのがEC-CUBE4です。

 

ただ、せっかく自社運営のネットショップを作るのであれば、それなりに様々な機能が欲しくなりますよね。そこで今回はもう一つの有名どころであるWordPressとの共存方法についてご紹介します。

 

WordPressとの共存

WordPressの主な役割はブログCMSです。自社サイトやプラグインによってはネットショップとしても活用することができますが、セキュリティ面からもネットショップ単体の機能として見ればEC-CUBE4に軍配が上がります。

しかし、ブログ機能としてはやはり優秀なため、その役割は持たせるべくEC-CUBE4内設置して共存させるというのが今回の大きな目的です。同一ドメイン化で管理することでSEO対策を意識したり、ユーザーが行き来しやすい状態を作り上げます。 

※直下で管理できたからと言ってもSEO対策で大幅な効果が得られるというわけではありません。無理やり直下管理することで構成がどうなっているかがわからなくなったり、本来のEC-CUBE4のシステムに干渉・影響を与えてしまい管理できなくなるのであれば、サブドメインで分けるなどして別管理することをオススメします。

  

やりたいこと 

今回やりたいことは、以下のURLでアクセスすることでそれぞれの管理下へ移管させることです。

EC-CUBE4

https://ドメイン名 

WordPress

https://ドメイン名/blog

 

blog以下はWordPress管理、それ以外はEC-CUBE4による管理としています。もちろん、EC-CUBE4でblogというパスを使用していないことが条件となります。

 

設置場所

では、WordPressファイルの設置場所についてです。公式よりダウンロードしたファイルを解凍すると、wordpressというフォルダ名になっているので、それをblogに変更してEC-CUBE4のルートディレクトリへ設置しました。

 

ディレクトリの名称はパスの名称ではありませんので、wordpressのままでも構いませんし、それ以外に自分でわかりやすい名称をつけてもらっても構いません。

 

Controllerの拡張

通常、EC-CUBE4でページ追加するとuser_dataというパスが付与され、それ以降に自分の決めたパス名が付与されたURLとなります。ですが、これはUserDataControllerを使用してページを拡張しているからに過ぎません。

なので、blog用にBlogControllerを作成して、新しいルーティングを作成しましょう。

 

/src/Eccube/Controller/BlogController.php
<?php

namespace Eccube\Controller;

 

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;

use Symfony\Component\Routing\Annotation\Route;

 

class BlogController extends AbstractController

{

    /**

     * @Route("/blog", name="blog")

     */

    public function index()

    {

        define( 'WP_USE_THEMES', true );

        require __DIR__ . '/../../../blog/wp-blog-header.php';

        return;

    }

 

}

 

ルーティングはドキュメントコメントのアノテーション(@)後に記述することで設定することができます/blogというルーティングを作成して、twigからname指定で呼び出せるようにname=”blog”と設定しています。

 

コントローラーが呼び出された際に行う処理は、WordPressのindex.phpで行なっている定数宣言とwp-blog-header.phpの呼び出しです。

これで、「https://ドメイン名/blog」というURLが指定された際にはWordPressファイルを呼び出すことができます。

 

.htaccessによる制御

この状態でblogURLにアクセスするとWordPressのインストールが可能です。しかし、インストール、ログイン画面までは表示出来たとしても、管理画面へアクセスすることができません。これを有効化させるためには、EC-CUBE4の.htaccessの制御範囲にWordPressディレクトリを対象外としなければなりません

 

/.htaccess
--省略

 

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg|map)$ [NC]

RewriteCond $1 !^(blog/)

 

--省略

 

上記の3行目が追加した記述です。blogディレクトリには干渉しないようにしています。これにより、WordPressを正常起動させることができます。

 

https://ドメイン名

 

https://ドメイン名/blog

 

 

https://ドメイン名/blog/ログイン画面パス

 

https://ドメイン名/blog/管理画面パス

 

EC-CUBE4の標準ページにも特に干渉していないため、正常稼働しています。

これで、各CMSの共存は完了です。パーマリンク設定やプラグインの導入によってはお互いが干渉し合うことで機能しない部分も出てくる可能性がありますので、一気に機能増設せずに1つずつ確認、どのプラグインや設定が原因となっているかチェックしながら開発するようにしましょう。

  

データベースの分離

EC-CUBE4WordPress共にデータベースを使用するCMSです。WordPressではインストール時に接頭語を決めることができるため、テーブルの衝突を避けることはできますが、できるだけそれぞれにDBを用意することをオススメします

同じDBを使えば、プラグインなどの影響で衝突が起こってしまうことが考えられるため、別管理しておくに越したことはありません。

共存管理する際には、十分に注意しながら開発を進めていってください。

 

 

まとめ

いかがだったでしょうか。

今回はネットショップの有名所である「EC-CUBE4」と、ブログCMSで有名な「WordPress」の共存方法についてご紹介しました。

 

それぞれの良さを引き出すことができれば、より機能性を持った強いサイトを作ることが可能です。その反面、それぞれの仕組みを十分に理解しておく必要があるため、ある程度の知識と保守やカスタマイズの制限などとも戦っていかなければなりません

それぞれ現段階での最新版を使った方法をご紹介しましたが、どちらもバージョンアップにより同じ方法が使えなくなる可能性もあるため、十分にご注意ください。

 

自社ネットショップの開設を検討している方は、ぜひ参考にしてみてくださいね。

 

注目の記事

ダメージ固定技編(ちきゅうなげ・カウンター) PHPポケモン 41
プログラミング
PHP,PHPポケモン,ポケモン
ダメージ固定技編(ちきゅうなげ・カウンター) PHPポケモン 41

ダメージ固定技とは PHPポケモンでも作成したダメージ計算機能ですが、ポケモンの技の中にはそれを必要としない技がいくつかあります。それが「固定ダメージ技」です。 ポケモンwiki(ダメージ固定技) https://wiki.ポケモン.com/wiki/ダメージ固定技 ステータスに依存せず、わざ自体にダメージ量が決...

HTMLの基本設計「よくわかるSEO対策」構造化(マークアップ)編
SEO対策
HTML,SEO,マークアップ
HTMLの基本設計「よくわかるSEO対策」構造化(マークアップ)編

  HTML5がリリースされて随分経ちました。 それにより多くのタグが増え、それにより今までデザインを目的と使用されていたものが「構造化」という本来の役割を持たされるようになりました。    構造化は、目に見えにくい部分です   それぞれの役割を理解していなければ、せっかくきれいなサ...

AIが人類にもたらす驚異!深層学習が与える影響とは
ネットワーク
AI,ディープフェイク,深層学習
AIが人類にもたらす驚異!深層学習が与える影響とは

  海外の記事でAIについて記述した興味深いものが掲載されました。   今回は「AIが人類にもたらす驚異!深層学習が与える影響とは」について、上記サイトを参考にまとめましたのでご紹介します。 ※直訳ではありません、あくまで記事の内容を参考にして自らの考えを記述したものです     AIの驚異と...

保守っていくらで何をする?フリーランスWebエンジニア対象!保守業務について解説します
フリーランス
システムエンジニア,フリーランス,プログラマー
保守っていくらで何をする?フリーランスWebエンジニア対象!保守業務について解説します

  サイトの保守を頼まれたけど、具体的に何をやればいいの?   フリーランスの、特に独学やスクール上がりでなった人にとっては保守は何をすれば良いかわからないという悩みを抱えている人は多いのではないでしょうか。 システム開発会社や制作会社にいた人でも、どのぐらいの金額で請け負うのが良いか検...

ネットワークとは【 第1回 ド素人のためのネットワーク講座】
ネットワーク
Wi-Fi,インターネット
ネットワークとは【 第1回 ド素人のためのネットワーク講座】

  身近なもの、普段から触れているものであっても、詳しく知らないものや、正しい理解が出来ていないものは多いですね。 その中の一つに「ネットワーク」というものがあります。   この講座は、一般的に言われる「コンピューター・ネットワーク」についてを説明していきます。 これからシステム関係の...

なぜ、お金を配るの?悪質メール・SNSを利用した詐欺的手法への対処法とは
ネットワーク
amazon,SNS,Twitter,お金配り,楽天,迷惑メール
なぜ、お金を配るの?悪質メール・SNSを利用した詐欺的手法への対処法とは

定期的に書きたくなるコラムのコーナー! 今回は、迷惑メールやSNSのDMを活用した悪質な勧誘、巷で流行っているお金配りを隠れ蓑のした巧妙な詐欺的手法などをいくつかご紹介、その対策・リクス回避の方法をまとめました。   まず結論からお伝えすると 「怪しいと思うなら手を出すな」 です。その詳細を知りたい...

PHPポケモン「状態異常編〜まひ〜」23
プログラミング
PHP,PHPポケモン,ポケモン
PHPポケモン「状態異常編〜まひ〜」23

  今回のPHPポケモンでは「状態異常」を導入します。バトルシステムにも関係してくる部分ですが、それ以外にも影響を与える部分が多く、且つ非常に判定がややこしく、作り込む必要があったため1つずつ片付けていきます。   状態異常の実装  ポケモンの除隊異常に該当するものは以下の7通りです。 ...

ネコにこばん編 PHPポケモン73
プログラミング
PHP,PHPポケモン,ポケモン
ネコにこばん編 PHPポケモン73

ネコにこばんとは 初代ポケモンでは、基本的にトレーナーとのバトルでしかお金を増やすことができず、もし手持ち金が0円の状態で金が必要なイベントが発生すると詰んでしまうという隠された落とし穴がありました。 ですが、初代でも唯一トレーナー意外からお金を得る方法があります。それが「ネコにこばん」という...

カテゴリ

SEO対策 イベント デザイン ネットワーク ビジネスモデル フリーランス プログラミング マーケティング ライティング 動画編集 雑記

タグ

5G Adobe AfterEffects AI ajax amazon Animate api artisan atom Automator AWS Bluetooth CSS CVR description EC-CUBE4 ECショップ ESLint Facebook feedly foreach function Google Google AdSense Honeycode htaccess HTML IEEE 802.11ax Illustrator Instagram IoT JavaScript jQuery jQuery UI keyword LAN Laravel Linux MacBook MAMP meta MLM MySQL NoCode note OS OSI参照モデル Paypal Photoshop PHP phpMyAdmin PHPポケモン PremierePro rss SEO SEO対策 Sequel Pro Skype SNS SSH Symfony TCP/IP title Toastr Trait Twig Twitter UCC V系 WAN WebSub Wi-Fi wiki Windows WordPress XAMPP xml Xserver YouTube YouTuber Zoom アーティスト アウトプット アクセス層 アニメーション アフィリエイト イーブイ インターネット インプット エンジニア オブジェクト指向 お金配り クリック単価 クリック数 コミュニケーション能力 コロナ コンサルティング サムネイル システムエンジニア スタートアップ スタイルシート スパム データベース ディープフェイク デザイナー デザイン テレワーク ナンパ ニュース ネットワークモデル ノマドワーク バナー ピカチュウ ビジネス フィード フリーランス ブロガー ブログ プログラマー プログラミング プログラミング学習 プログラミング教育 プロトコル ホームページ制作 ポケモン マークアップ マーケティング メール リモートワーク レンダリング 三井住友 三宮 仕事依頼 児童デイ 児童デイサービス 児童発達支援 公開鍵 初心者 助成金 勉強法 営業 広告 広告収入 必勝マニュアル 放課後等デイサービス 朝活 楽天 深層学習 無線LAN 独立 神戸 福祉 秘密鍵 翻訳 自己啓発 英語 見積書 計算機 読書 起業 迷惑メール 配列 銀の弾丸 集客 雑学力