Site icon Amelt.net

WordPressアドレス(インストールディレクトリ)とは別にサイトアドレス (URL)を表示したい時の設定メモ

This post is also available in: 日本語 (Japanese)

web_wordpress-logo-hoz-rgb


この記事はwordpressの表示URLを、インストールディレクトリとは別の表示にしたい場合の設定のメモです。

似たような事例を、別記事に書いていますので参考にしてみてください。
wordpressでプレビューが「ページが見つかりません」と表示されない場合の対処法
wordpressで一般設定のアドレス(URL)を間違った/ディレクトリ変更した時の解決方法

久々に最近のwordpressを使ってみたらindex.phpのコードが変わっていました。
古い情報に基づいてindex.phpからwp-blog-header.phpを呼び出すコードを書くと混乱すると思いますので、その対処方法とかです。

以下のようなケースを例として想定しています。
インストールディレクトリ:http://sample.com/wordpress/
訪問者にトップページとして表示したいURL:http://sample.com/

管理画面からサイトアドレス (URL)を変更する

[WordPress管理画面 > 設定 > 一般]と移動する。
[WordPress アドレス (URL)]はインストールディレクトリに変更があった場合以外には触る必要がありません
[サイトアドレス (URL)]に訪問者にトップページとして表示したいURLを設定します。

index.phpの修正

で、古い情報だとトップページとして表示したいURL階層にindex.phpを移動して、以下のように設定すると書いてあります。特にこの書き方でも問題ないんですが、新しいコードの方がメンテナンス的にメリットがあります。

//これは古い情報で、最近のwordpressは書いてあるコードが違います。
require('./wordpress/wp-blog-header.php');

想定しているケースの例だと、wordpressフォルダ内にあるindex.phpを、wordpressフォルダと同じ階層に移動して、index.phpの内容を修正します。

index.phpからwordpressフォルダ内のwp-blog-header.phpを呼び出す必要があるので、index.phpの場所を変更するとindex.phpの内容も修正する必要が出てきます。(index.phpから見た、wp-blog-header.phpへの相対パスをrequireする。)

index.php内のコードに dirname( __FILE__ ) の表記があるバーションのwordpressを使っている場合には、古い情報のようにではなく、以下のように設定します。

//最近のwordpressのindex.phpのコード
require( dirname( __FILE__ ) . '/wordpress/wp-blog-header.php' );

[dirname( __FILE__ )]で、index.phpがあるフォルダまでが取得されています。想定しているケースの例だと[http://sample.com/]まで。
そしてピリオド[.]は連結しているだけなので、[/wordpress/wp-blog-header.php]と残りを付け足すと、index.phpから見た、wp-blog-header.phpへの相対パスが記述できます。