プラグインThe Events Calendarのtec_events_{$view}_add_no_index_metaアクションの使用方法・解説

概要

tec_events_{$view}_add_no_index_metaアクションは、The Events Calendarプラグインにおける特定のビュー(例:月、週、日)に関連するカスタムメタタグを追加するためのフックです。このフックを使用すると、検索エンジンのインデックスを防ぐために特定のページにnoindexメタタグを挿入できます。

このフックは、以下のような機能を実装する際によく使用されます:
1. 特定のイベントページのみ検索エンジンに表示させないようにする。
2. 計画中のイベントや非公開のイベントのページを非インデックスに設定する。
3. カスタム条件に基づいて、ユーザーの閲覧状況に応じてnoindexを追加する。
4. 特定のカスタムフィルターを利用してメタタグの動的生成を行う。
5. 日曜など特定の日付のイベントページを検索エンジンから排除する。
6. デフォルトのメタタグ設定をオーバーライドする。

構文

do_action('tec_events_{$view}_add_no_index_meta');

パラメータ

このアクションには特定のパラメータはありませんが、{$view}はビューの種類を示す変数です(例:month, week, day)。

戻り値

このアクション自体は値を返しませんが、フックを介して特定の処理やメタタグを追加することができます。

使用可能なプラグインおよびバージョン

  • The Events Calendarバージョン:5.x以上
  • WordPressバージョン:5.x以上

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

アクション 使用例
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_action('tec_events_month_add_no_index_meta', 'add_no_index_meta_for_month_view');

function add_no_index_meta_for_month_view() {
    echo '<meta name="robots" content="noindex" />';
}

このサンプルコードは、The Events Calendarの月間ビューにnoindexメタタグを追加するためのものです。

サンプル2:週次ビューに条件付きでnoindexを追加

add_action('tec_events_week_add_no_index_meta', 'conditionally_add_no_index_meta');

function conditionally_add_no_index_meta() {
    if (is_user_logged_in()) {
        echo '<meta name="robots" content="noindex" />';
    }
}

このサンプルコードは、ユーザーがログインしている場合にのみ週次ビューにnoindexメタタグを追加します。

サンプル3:特定の日にnoindexを追加

add_action('tec_events_day_add_no_index_meta', 'add_no_index_for_specific_day');

function add_no_index_for_specific_day() {
    if (date('l') == 'Sunday') {
        echo '<meta name="robots" content="noindex" />';
    }
}

このサンプルは、曜日が日曜日の場合に日のイベントビューにnoindexメタタグを挿入します。

サンプル4:ビュータイプに応じてnoindexを変更

add_action('tec_events_day_add_no_index_meta', 'custom_no_index_meta');

function custom_no_index_meta() {
    $current_view = get_query_var('view');
    if ($current_view == 'day') {
        echo '<meta name="robots" content="noindex, follow" />';
    }
}

このコードは、現在のビュータイプが「day」の場合に特定のnoindexメタタグを追加します。

サンプル5:カスタム条件に基づくnoindexの制御

add_action('tec_events_month_add_no_index_meta', 'dynamic_no_index_control');

function dynamic_no_index_control() {
    if (is_single('event')) {
        echo '<meta name="robots" content="noindex" />';
    }
}

このサンプルコードは、投稿が「event」の場合にのみ月間ビューにnoindexを追加します。

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


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