WordPressのテンプレートで404エラーページを作成する

WordPressのテンプレートで404エラーページを作成する

Webサイトでは、存在しないURLのページを開いたとき「404」や「Not Found」などのエラーメッセージが表示されます。エラーメッセージは通常ブラウザーに用意されているものが表示されますが、404エラーを表示するためのページを用意しているサイトも多くあります。今回はWordpressで404エラーページを作成する方法をまとめておきたいと思います。

WordPressでは404エラーが発生した場合、優先的にindex.phpが表示されるようになっています。そのままではトップページが表示されるので、404エラーの際に専用のページを表示できるようにテンプレート「404.php」を作成します。

404.php

404.phpファイルを用意するだけで、404エラーの際に自動でページが表示されるようになります。エラーメッセージや、表示できなかったページのURLなどを表示する場合は404.phpファイルに内容を記載します。

以下がサンプルです。ページの構造はpage.phpとほぼ同様です。

<?php get_header(); ?>
<div class="contents">
  <h1>Page Not Found!</h1>
  <p>http://<?php echo esc_html($_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']); ?></p>
  <p>お探しのページは存在しないURL または 削除されたページの為見つかりませんでした。<br />
  <a href="<?php echo home_url(); ?>">Go back to the Home</a></p>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

echo esc_html($_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']); で、404エラーとなったページのURLを表示することができます。ホームへ戻るリンクも表示させていますが、必要なければエラーメッセージだけでも良いかもしれません。

作成した404エラーページはURLの後ろに「〜404.php」をつけるとアクセスできます。
https://tamatuf.net/404.php

404.phpを作成したことで、存在しないページにアクセスすると自動的に用意したエラーページへ移動させることができるようになりました。普段は意図的に閲覧されるページではありませんが、サイトごとに特色のあるページが用意されていることもあるので偶然素敵なページに出会えるかもしれません。

Share on Twitter
関連記事
Contact Form 7でお問い合わせフォームを作成する方法
Contact Form 7でお問い合わせフォームを作成する方法
WordPress記事内の特定のコードを置換する方法
WordPress記事内の特定のコードを置換する方法
WordPressでメールのタイトルが文字化けした時の解決策
WordPressでメールのタイトルが文字化けした時の解決策