Irohabook
PHP WordPress

WordPressで画像ページを404ページにリダイレクトする:画像が勝手に生成するページを検索エンジンにインデックスさせない方法

広告

WordPress の画像ページを非表示(正確には 404 ページにリダイレクト)するには、次のコードを functions.php に追加します。

add_action('template_redirect', 'my_attachment');

function my_attachment()
{
    if (is_attachment()) {
        global $wp_query;
        $wp_query->set_404();
        status_header(404);
    }
}

WordPress はアップロードした画像のページを生成する。これは投稿ページと似ていますが、その画像しかありません。検索エンジンに中身のないコンテンツと認識されるリスクがあります。「画像のアルバムのように表示したい」という特殊な目的がない限り、なるべく表示しないほうがいいでしょう。

厳密には「画像ページの非表示」でなく、「画像ページを 404 ページにリダイレクト」です。リダイレクトしてももとの画像はきちんと表示されます。あくまでも画像が生成する無駄なページをリダイレクトしています。

画像ページは is_attachment で判断します。if (is_attachment()) がないとすべてのページがリダイレクトされてしまうので注意しましょう。

広告

コンピューター コンピューター
プログラミング プログラミング
数学 数学
英語 英語
国語 国語
理科 理科
社会 社会