特定のページをちゃんと404で表示したい。
事情により、WordPressが用意する一部ページを閉じたい場合があります。
単に該当のテンプレートファイルに exit;
書いてもいいのでしょうけれど、それだとシンプルすぎて不親切ですよね。(真っ白だったり、「Error」とだけ表示されたり。)
404ページのテンプレート 404.php
があるんだから、使いましょう。そしてちゃんとステータスコード 404
を返しましょう。
方法
アーカイブページをクローズしたい場合は archive.php
、記事詳細ページをクローズしたい場合は single.php
など、ご希望のテンプレートファイルの冒頭に以下のコードを追記してください。
また、特定の記事のみクローズしたい場合などは if 文などでURLや記事番号で切り分けるといいでしょう。 functions.php
に書いて関数化してしまっても便利かもしれませんね。
<?php header('HTTP/1.0 404 Not Found'); include(TEMPLATEPATH.'/404.php'); exit; ?>