運営堂ブログ

WordPress2.5.1で404ページを表示させる

問題です。
Wordpress2.5.1で存在しないページのURLを入力したときにはどうなるのでしょうか?

■存在するページに近いURLを入力したとき
それに近いURLを自動で表示してくれます。
弊社で作成したNINANINOさんのページを例に挙げます。

存在しないURL:http://www.ninanino.net/a
    ↓
表示されるURL:http://www.ninanino.net/aboutus

便利なようで不便な機能ですね~。

■存在しないURLを入力した場合
wp-content/themes/(使用しているテーマ)の中にある404.phpが表示されますので、404.phpにスタイルを当ててやればOKです。

2.5の場合Wordpressの不具合があるようで修正が必要です。Wordpressのフォーラムに解決方法がありました。
下記に解決法が載っています。

症状が出るのは、トップページをスタティックページにしている場合のようです。(自分の環境では、上記+パーマリンク構造がデフォルトではない時、という環境ではないかと推測されます。)
下記に解決法が載っています。
Improper 404 Error Handling Fix For WordPress 2.5
/wp-includes/query.phpのline:922
if ( (‘page’ != get_option(‘show_on_front’) ) ,, ( $reqpage != get_option(‘page_for_posts’) ) ) {

if ( (‘page’ != get_option(‘show_on_front’) ) ,, ( $reqpage !== get_option(’page_for_posts’) ) ) {

トップページを投稿ページではなくて静的ページにしているときにはこの修正が必要ですね。

参考サイト
404ページが表示されない
Improper 404 Error Handling Fix For WordPress 2.5