cakePHPとwordpressの共存

こんばんわ。
久しぶりのエントリーです。
今回のエントリーは、メモ書き程度なので
軽く流していただければ幸いです。

コーポレートサイトなどでwordpresを使用することも
多いかなとは思いますが、
中にはwordpressだけではどうしようもない要望というものもあるものです。
今回、あるサイトをリニューアルするにあたり、
cakephp2を使用して、オリジナルなシステム開発を行いつつ、
既存のwordpress(といってもブログです)を行いたいと思ってます。

CakePHP2 実践入門 (WEB+DB PRESS plus)

そこでどういった形であれば、
簡単に環境を整えることができるのか、
その環境設定ファイルをメモ書きします。

[前提]
サーバー:sakuraのレンタルサーバー
ドメイン(仮定):testtest.com
サブドメイン:site1
(ドメインの設定にて、site1のディレクトリ関連はhttp://www.testtest.com/site1/に相当。)
よって、
http://site1.testtest.comがメインのcakephpが置かれるところ。
その配下に、
http://site1.testtest.com/blog/というwordpressが置かれると仮定します。

1.まずcakePHPをインストール
2.appフォルダが今回利用するcakeのアプリケーションフォルダとします。
3.htaccessの変更
ここさえ設定すれば、問題ないです。

1)cakePHPをインストールしたルートディレクトリ

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule    ^$ app/webroot/    [L]
RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

2)1)の配下のappディレクトリ

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /app

RedirectMatch temp ^/blog/wp-admin$ http://site1.testtest.com/blog/
RewriteRule ^blog$ blog/ [L]
RewriteRule ^blog/wp-admin$ blog/wp-admin/ [L]

RewriteRule    ^$    webroot/    [L]
RewriteRule    (.*) webroot/$1    [L]
</IfModule>

3)2)の配下のwebrootディレクトリ

<IfModule mod_rewrite.c>
RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

これで桜のレンタルサーバーで、
サブドメイン運用による、
cakePHP内にwordpress運用が可能になりそうです。

Pocket