WordPressテーマTCDを使うようになって、はじめて知ったのがWordPressでページを作ると勝手に画像ページが出来るということです。
今まで、使っていたテーマではそのようなページを意識したことがありませんでした。(実は他のテーマでも同じような画像ページが出来ます)
おもしろいと思いつつも困った機能です。
というのも、この画像ページがGoogleでキャッシュされる可能性があるのです。
WordPressには画像ページ
ブログで以下のようなページを作成したとします。
URLは「https://www.slashd.com/blog/wordpress-tcd-unique/」です。
ヘッドに表示される画像はメディアで追加しています。
すると、メディアに追加した画像だけのページが自動的に生成されます。
以下のページができます。
URLは「https://www.slashd.com/blog/wordpress-tcd-unique/img-1280×791/」です。
このページが出来るのはWordPressの標準仕様となっています。
しかし、ユーザーから見ると全く不要なページでしょう。
このページをアクセスさせないよう対策が必要となりました。
attachment.phpのアクセスを404に
画像ページを作る優先度の高いPHPはattachment.phpです。
そこで、attachment.phpにアクセスがあった場合に404ステータスコード(Not Found)を返すようにfunctions.phpに以下を追加します。
// attachmentページへのアクセスは404エラーにする add_action( 'template_redirect', 'status404' ); function status404() { if ( is_attachment() ) { global $wp_query; $wp_query->set_404(); status_header(404); } }
これで、先ほどのURL「https://www.slashd.com/wordpress-tcd-unique/img-1280×791/」にアクセスしても404メッセージが表示されるようになります。
万が一、画像ページをGoogleがインデックスしても404エラーになりますので、問題ありません。
by T.Y.