Archive for » 12月, 2014 «

[WordPress]マルチサイトでパーマリンクの「blog」を削除する

 

約2年振りの投稿になってしまいました(笑)
最近はWordPressでのサイト構築が多くなってきたので、備忘録もかねて投稿しておきます。

WordPressは便利なもので、マルチサイト化をするとひとつインストールすれば、サブディレクトリ型で、いわゆる子サイトをいくつも作れるんですよね。
例えば企業のホームページをWordPressをCMSとして構築した場合
http://www.XXX.co.jp/ を親サイトとして http://www.XXX.co.jp/sub/ を子サイトとして商品紹介なんかしたいとき、子サイトは別のデザインとかで作りやすいんんです。
便利ですねWordPress。
これで基本無料だからすごいです。

ですが、親サイトのほうのパーマリンク構造に「blog」という文字が標準で当たり前のように入っています。
これを消す方法とかでネットワーク管理画面で設定タブの中の「Permalink Structure」にデフォルトで記述してある「blog」を消します。これでOK!という記事が多く見付けられますが、実はこれだとダメな場合が多いです。
これだと「http://www.XXX.co.jp/ポスト名」でURLが発行されますが、実際は「http://www.XXX.co.jp/blog/ポスト名」でないとアクセスできなかったりします。
またふとした操作で「blog」がまた復活したりします。


これは根本からおかしいと思い、いろいろ探すと「options-permalink.php」を直接編集するのがベストという結論になりました。

FTPでサーバにアクセスし、WordPress内「wp-admin」フォルダ内にある「options-permalink.php」を開くと通常は80行目付近に

$blog_prefix = ‘/blog’;

という記述があったので、これを

$blog_prefix = ”;

に上書きします。

これでバッチリです。
このあと、わざとパーマリンク構成を変えてみましたが、再び「blog」が付くことはありませんでした!!


しかし、これには落とし穴が。。。。

最近のWordPressは本体が自動更新されますが、自動更新されると「options-permalink.php」が初期化されて、また「blog」が復活してしまいます。
再度手動で同じように削除すればいいだけなんですが。


マルチサイトで運営している人の大多数は親サイトを「blog」で運営するケースはほぼないと思います。
逆に子サイトに「blog」を付けて運営したいケースが多いと思いますが、なんとそれは許可されないという仕様だったり。
この辺、WordPressに考え方変えてもらいたいですね。