概要
is_trackback
関数は、トラックバックエンドポイントリクエストなのか調べるために使用されます。この関数を使用することで、現在のリクエストがトラックバックであるかどうかを判断できます。これにより、テーマやプラグインで特定の処理や表示を切り替えることが可能になります。よく使われる機能には、以下のようなものがあります。
- トラックバックリクエストの処理
- カスタムメッセージの表示
- 特定のテンプレートの読み込み
- 他のリクエストとの条件分岐
- エラーメッセージの表示
- HTTPヘッダーの設定
- 特定のログの記録
- AJAXリクエストとの連携
構文
is_trackback();
パラメータ
この関数にはパラメータはありません。
戻り値
is_trackback
関数は、現在のリクエストがトラックバックリクエストの場合に true
を、それ以外の場合に false
を返します。
関連する関数
- https://refwp.com/?titleonly=1&s=is_front_page
- https://refwp.com/?titleonly=1&s=is_single
- https://refwp.com/?titleonly=1&s=is_home
この関数を使用可能なバージョン
is_trackback
関数は、WordPress 2.0.0 にて導入されました。
コアファイルのパス
is_trackback
関数は、以下のファイルに含まれています。
/wp-includes/query.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: トラックバックの確認
if (is_trackback()) {
// トラックバックリクエストの場合の処理
// 特定のメッセージを表示
echo 'トラックバックを受信しました。';
}
説明: トラックバックリクエストかどうかを確認し、トラックバックの場合にメッセージを表示します。
サンプル2: トラックバック用の特別な処理
add_action('init', 'custom_trackback_handler');
function custom_trackback_handler() {
if (is_trackback()) {
// 他の処理を追加
// 例えば、特定のデータをログに記録
error_log('トラックバックが送信されました。');
}
}
説明: init
アクションにフックして、トラックバックリクエストの場合にログに記録する処理を追加します。
サンプル3: カスタムエラーメッセージ
if (is_trackback()) {
// トラックバックリクエストの際、エラーメッセージをカスタマイズ
status_header(400);
echo '無効なトラックバックです。';
exit;
}
説明: トラックバックリクエストが無効な場合に、400エラーを返し、カスタムエラーメッセージを表示します。
サンプル4: テンプレート切り替え
if (is_trackback()) {
// トラックバックリクエストの時だけ特定のテンプレートを読み込む
include(TEMPLATEPATH . '/trackback-template.php');
exit;
}
説明: トラックバックリクエストの場合に、特定のテンプレートファイルを読み込みます。
サンプル5: AJAXリクエストとの連携
add_action('wp_ajax_nopriv_trackback_ajax', 'handle_trackback_ajax');
function handle_trackback_ajax() {
if (is_trackback()) {
// AJAXリクエストによるトラックバックの処理
// 例: トラックバックデータの保存
// ...
wp_send_json_success('トラックバックを受信しました。');
}
}
説明: AJAXリクエストがトラックバックであれば、データを処理し、成功レスポンスを返します。