ワードプレスのnoindexフィルタの使用方法・解説

概要

WordPressのnoindexフィルタは、特定のページや投稿が検索エンジンにインデックスされないようにするために使用されます。このフィルタを使用すると、サイト管理者はSEO戦略に基づいて、特定のコンテンツを検索エンジンから除外することができます。以下は、noindexフィルタがよく使われる機能の例です。

  1. 特定の投稿タイプを非インデックス化
  2. カスタム条件に基づくページや投稿の非インデックス化
  3. 特定のタグやカテゴリーのページを非インデックス化
  4. ログインユーザー専用のページのインデックス除外
  5. 効率的なクローリングのための重複コンテンツの制御
  6. 特定の条件で表示される特別なページの除外
  7. 特定のURL構造に対する設定
  8. テスト環境や開発環境のサイトを非インデックス化

構文

フィルタの基本的な構文は次の通りです。

add_filter('wpseo_robots', 'custom_noindex_function');

パラメータ

  • $robots: 既存のrobotsメタタグの値。デフォルトでは “index, follow” です。

戻り値

  • 文字列: 変更されたrobotsメタタグの値。

関連する関数

https://refwp.com/?titleonly=1&s=wpseo_robots

このフィルタを使用可能なバージョン

  • WordPress 4.0以降で使用可能です。

コアファイルのパス

  • wp-includes/class-wp-filters.php

サンプルコード

サンプルコード1: 投稿タイプの非インデックス化

このコードは、特定の投稿タイプ(ここでは「custom_type」)を検索エンジンから非インデックス化します。

add_filter('wpseo_robots', function($robots) {
    if (is_singular('custom_type')) {
        return 'noindex, nofollow';
    }
    return $robots;
});

サンプルコード2: 特定のカテゴリーを非インデックス化

このコードは、特定のカテゴリーに属するページを非インデックス化します。

add_filter('wpseo_robots', function($robots) {
    if (is_category('no-index-category')) {
        return 'noindex, nofollow';
    }
    return $robots;
});

サンプルコード3: ログインユーザー専用ページの非インデックス化

このコードは、ログインしているユーザーのみが利用するページを検索エンジンから非インデックス化します。

add_filter('wpseo_robots', function($robots) {
    if (is_page('private-page') && is_user_logged_in()) {
        return 'noindex, nofollow';
    }
    return $robots;
});

サンプルコード4: あらゆる検索結果ページの非インデックス化

このコードは、検索結果ページのインデックスを防ぎます。

add_filter('wpseo_robots', function($robots) {
    if (is_search()) {
        return 'noindex, nofollow';
    }
    return $robots;
});

サンプルコード5: 特別な条件に基づく非インデックス化

このコードは、特定のユーザーロールに応じて、ページを非インデックス化します。

add_filter('wpseo_robots', function($robots) {
    if (current_user_can('editor')) {
        return 'noindex, nofollow';
    }
    return $robots;
});

この関数のアクションでの使用可能性

アクション 使用可能性
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

このフィルタは、特定のバージョンで非推奨や削除されていません。

この関数について質問する


上の計算式の答えを入力してください