BLOG

ブログ

TOP

>

ブログ一覧

>

【WordPress】特定のタームアーカイブをnoindexにする方法

【WordPress】特定のタームアーカイブをnoindexにする方法

【WordPress】特定のタームアーカイブをnoindexにする方法

まだコンテンツが少ない時はアーカイブページをnoindexにした方がSEO的にも良いとのことなので、使っていない(使う予定はある…。)アーカイブページをnoindexにしてみました。

functions.phpに直接書き込む

// 特定のタームアーカイブだけ noindex
add_filter( 'wp_robots', function ( $robots ) {
    if (is_tax(‘タクソ名’, ‘ターム’) ) {
        $robots['noindex'] = true;
        $robots['nofollow'] = false; // followのまま。状況によってtrueに。
    }
    return $robots;
});
PHP


右クリックして、「ページのソースを表示」→command + Fで「noindex」を検索。 すると

<meta name=”robots” content=”noindex,follow“>

こんなのがあればOK。
(サーバーキャッシュも確認してね)

ALL in One SEO入れている場合

ALL in One SEOのプラグインを入れている場合は、WordPress標準の

add_filter(‘wp_robots‘, …);

の出力はほぼ全部上書きされるらしく、以下のコードを書くと成功します。

add_filter( 'aioseo_robots_meta', function( $robots ) {
    if ( is_tax( 'タクソ名', 'ターム' ) ) {
        $robots['index']  = 'noindex';
        $robots['follow'] = 'follow';
    }
    return $robots;
});
PHP

特定の記事をnoindexにする方法

ちなみに記事だったら、管理画面から簡単に変更できます。

記事の編集画面から「ALL in One SEO」→「高度な設定」→「Robots Meta」→「デフォルト設定を使用」のとこをオフ「インデックスなし」をチェック

特定のカスタム投稿をnoindexにする方法

カスタム投稿のアーカイブなども管理画面から簡単に変更できます。


管理画面の「ALL in One SEO」→「検索の外観」→上のタブの「コンテンツタイプ」→noindexにしたいコンテンツまでスクロール→「高度な設定」→「ロボットのメタ設定」→「デフォルト設定を使用」のとこをオフ「インデックスなし」をチェック

特定のタクソノミーをnoindexにする場合も同様管理画面から可能です。

まとめ|無料のALL in One SEO入れている場合、管理画面からタームのnoindexはできない

記事も、カスタム投稿もタクソノミーもnoindexに管理画面からできるけど、タームだけ有料プランに入れないと設定出来ないようです。

ちなみに複数のタームをnoindexしたい場合のコードはこちら。
2種類のタクソノミーあり。

add_filter( 'aioseo_robots_meta', function( $robots ) {
    $noindex_terms = array(
        'タクソ1’ => array( ‘ターム1’, 'ターム2’ ),
        'タクソ2’ => array( ‘ターム3, 'ターム4’ ),
    );

    if ( is_tax() ) {
        $qo = get_queried_object();
        if ( $qo instanceof WP_Term && isset( $noindex_terms[ $qo->taxonomy ]) ) {
            if ( in_array( $qo->slug, $noindex_terms[ $qo->taxonomy ], true ) ) {
                $robots['index']  = 'noindex';
                $robots['follow'] = 'follow';
            }
        }
    }
    return $robots;
});
PHP
TOP

>

ブログ一覧

>

【WordPress】特定のタームアーカイブをnoindexにする方法

【WordPress】特定のタームアーカイブをnoindexにする方法