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

概要

get_privacy_policy_templateフィルタは、プライバシーポリシーページ用テンプレートのパス名を取得するためのフィルターフックです。このフィルタは、プライバシーポリシーページの表示に関するカスタマイズを行いたい場合によく使用されます。たとえば、独自のプライバシーポリシーのデザインや特定のコンテンツを追加したい場合などに利用します。

よく使われるケース

  1. プライバシーポリシーのカスタマイズ
  2. テーマに特有のプライバシーコンテンツの追加
  3. 独自のプライバシーポリシーテンプレートの指定
  4. 特定のプラグインと連携したカスタマイズ
  5. 条件に応じた異なるテンプレートの提供
  6. プライバシーポリシーの言語依存のカスタマイズ
  7. モバイルとデスクトップでの表示の違いをサポート
  8. 複数サイト環境でのテンプレート選択

構文

apply_filters( 'get_privacy_policy_template', $template );

パラメータ

  • $template: 現在のプライバシーポリシーテンプレートのファイルパス。

戻り値

  • フィルタを適用した後のプライバシーポリシーテンプレートのファイルパス。

関連する関数

get_privacy_policy_template

ワードプレスのバージョン

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

コアファイルのパス

wp-includes/pluggable.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: カスタムテンプレートの追加

このコードは、プライバシーポリシーのために独自のカスタムテンプレートを指定する例です。

add_filter( 'get_privacy_policy_template', 'my_custom_privacy_policy_template' );
function my_custom_privacy_policy_template( $template ) {
    return get_template_directory() . '/custom-privacy-policy.php';
}

このコードは、テーマのルートディレクトリにある custom-privacy-policy.php をプライバシーポリシーのテンプレートに使用します。

サンプル2: 条件付きテンプレートの選択

特定の条件に基づいて異なるプライバシーポリシーを設定するコードです。

add_filter( 'get_privacy_policy_template', 'conditional_privacy_policy_template' );
function conditional_privacy_policy_template( $template ) {
    if ( is_user_logged_in() ) {
        return get_template_directory() . '/logged-in-privacy-policy.php';
    }
    return get_template_directory() . '/default-privacy-policy.php';
}

このコードでは、ユーザーがログインしているかどうかに応じて異なるテンプレートを選択します。

サンプル3: モバイルデバイス用テンプレートの指定

このコードは、モバイルデバイスに特化したプライバシーポリシーのテンプレートを提供します。

add_filter( 'get_privacy_policy_template', 'mobile_privacy_policy_template' );
function mobile_privacy_policy_template( $template ) {
    if ( wp_is_mobile() ) {
        return get_template_directory() . '/mobile-privacy-policy.php';
    }
    return $template;
}

モバイルデバイスでアクセスした場合、mobile-privacy-policy.phpを使用します。

サンプル4: プラグインによるテンプレートの変更

プラグインのためにプライバシーポリシーを変更するコードです。

add_filter( 'get_privacy_policy_template', 'plugin_privacy_policy_template' );
function plugin_privacy_policy_template( $template ) {
    if ( function_exists( 'some_plugin_function' ) ) {
        return plugin_dir_path( __FILE__ ) . 'plugin-privacy-policy.php';
    }
    return $template;
}

some_plugin_functionが存在する場合、プラグイン用のプライバシーポリシーを設定します。

サンプル5: マルチサイト環境でのプライバシーポリシーの変更

マルチサイト環境において、特定のサイト用のプライバシーポリシーを設定するコードです。

add_filter( 'get_privacy_policy_template', 'multisite_privacy_policy_template' );
function multisite_privacy_policy_template( $template ) {
    $current_site_id = get_current_blog_id();
    if ( $current_site_id == 2 ) {
        return get_template_directory() . '/site2-privacy-policy.php';
    }
    return $template;
}

サイトIDが2の場合、site2-privacy-policy.phpを使用します。

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


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