プラグインThe Events Calendarのtec_events_add_no_index_meta_tagフィルタの使用方法・解説

概要

tec_events_add_no_index_meta_tagフィルタは、The Events Calendarプラグインの特定のページに対して「noindex」メタタグを追加するためのフックです。このフィルタを使うことで、特定のコンテンツが検索エンジンにインデックスされるのを防ぎたい場合などに利用されます。

よく使われる機能

tec_events_add_no_index_meta_tagフィルタは以下のような状況でよく使用されます。
1. イベントページのインデックスを防ぎたい時。
2. テストサイトや開発環境でのページインデックスを制御したい時。
3. 特定のカスタム投稿タイプを無効にしたい時。
4. 重複コンテンツの問題を回避したい時。
5. プライバシー保護のための設定を行う時。
6. SEO戦略に基づいて特定ページを非表示にしたい時。

構文

add_filter('tec_events_add_no_index_meta_tag', 'your_custom_function');

パラメータ

  • $no_index: 現在の「noindex」状態(trueまたはfalse)。

戻り値

  • bool: trueであれば「noindex」を追加する。

バージョン

  • The Events Calendar: 5.0以上
  • WordPress: 5.0以上

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

アクション名 使用例
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を追加する

add_filter('tec_events_add_no_index_meta_tag', function($no_index) {
    return true; // すべてのイベントページにnoindexを追加
});

このサンプルでは、すべてのイベントページに対して「noindex」メタタグを追加しています。

サンプル2: 特定のイベントだけにnoindexを追加する

add_filter('tec_events_add_no_index_meta_tag', function($no_index) {
    if (is_singular('tribe_events') && get_the_ID() == 123) {
        return true; // IDが123のイベントページにのみnoindex
    }
    return $no_index;
});

このコードは、特定のイベント(IDが123)にのみ「noindex」を追加しています。

サンプル3: クエリパラメータに基づいてnoindexを設定

add_filter('tec_events_add_no_index_meta_tag', function($no_index) {
    if (isset($_GET['noindex']) && $_GET['noindex'] === 'true') {
        return true; // URLパラメータでnoindexを制御
    }
    return $no_index;
});

このサンプルは、URLに「noindex=true」のクエリパラメータがある場合に「noindex」を追加します。

サンプル4: 管理者がアクセスしている場合はnoindexを追加しない

add_filter('tec_events_add_no_index_meta_tag', function($no_index) {
    if (is_user_logged_in() && current_user_can('administrator')) {
        return false; // 管理者にはnoindexを追加しない
    }
    return $no_index;
});

このコードは、ログイン中の管理者がイベントページを表示する場合、noindexを追加しないように設定しています。

サンプル5: フロントエンドのユーザーの役割に基づいてnoindexを追加

add_filter('tec_events_add_no_index_meta_tag', function($no_index) {
    if (is_user_logged_in() && !current_user_can('editor')) {
        return true; // 編集者以外にはnoindexを追加
    }
    return $no_index;
});

このサンプルは、ログインしているユーザーが編集者でない場合にnoindexを追加します。

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


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