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

概要

wp_robots_noindexフィルタは、WordPressのページにrobotsメタ要素のcontent属性にnoindexを適用するために使用されます。このフィルタは、検索エンジンが特定のページをインデックスしないように指示するために役立ちます。主に以下のような状況で利用されます。

  1. 管理者用のページやダッシュボード
  2. プライベート投稿や非公開のコンテンツ
  3. 一時的サイドバーウィジェット
  4. テストまたは開発環境のページ
  5. 特定の条件下でのページ
  6. カスタム投稿タイプの不必要なインデックス
  7. トップページや特定のアーカイブの設定
  8. SEO対策における不要なページの排除

構文

apply_filters( 'wp_robots_noindex', $noindex, $post );

パラメータ

  • $noindex: 現在のnoindex状態。通常はboolean(true/false)で表される。
  • $post: 現在処理中の投稿オブジェクト。

戻り値

  • フィルタ適用後のnoindex状態(boolean)。

関連する関数

関連する関数の一覧は、こちらをご覧ください。

使用可能なバージョン

このフィルタは、WordPress 4.4以降で使用可能です。

コアファイルのパス

このフィルタは、wp-includes/general-template.phpに含まれています。

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

アクション 使用可能性
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

サンプルコード

サンプルコード1: 投稿タイプにnoindexを設定する

このコードは、特定の投稿タイプのページに対してnoindexを適用します。

add_filter('wp_robots_noindex', function($noindex, $post) {
    if ($post->post_type === 'your_custom_post_type') {
        return true;
    }
    return $noindex;
});

サンプルコード2: 特定の条件でnoindexを適用する

このコードは、特定のカスタムフィールドがある投稿にnoindexを適用します。

add_filter('wp_robots_noindex', function($noindex, $post) {
    if (get_post_meta($post->ID, '_noindex_meta', true)) {
        return true;
    }
    return $noindex;
});

サンプルコード3: 管理者ページにnoindexを設定する

このコードは、管理者に関連するページにnoindexを追加します。

add_filter('wp_robots_noindex', function($noindex) {
    if (is_admin()) {
        return true;
    }
    return $noindex;
});

サンプルコード4: 検索結果ページにnoindexを適用する

このコードは、検索結果ページにnoindexを追加します。

add_filter('wp_robots_noindex', function($noindex) {
    if (is_search()) {
        return true;
    }
    return $noindex;
});

サンプルコード5: 特定のページテンプレートに対してnoindexを設定する

このコードは、特定のページテンプレートにnoindexを適用するものです。

add_filter('wp_robots_noindex', function($noindex, $post) {
    if (is_page_template('template-special.php')) {
        return true;
    }
    return $noindex;
});

各サンプルコードは、特定の条件に基づいてnoindexを適用する方法を示しています。使用するシナリオによって調整が必要です。

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


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