概要
is_favicon関数は、リクエストがfavicon.icoであるかどうかを調べるための関数です。この関数は、特にウェブサイトのファビコン(サイトのアイコン)を管理する際に役立ちます。次のようなケースでよく使われます。
- ファビコンのリクエストを特定する。
- 特定のロジックをファビコンのリクエストに限定する。
- ファビコンに対するカスタムヘッダーを設定する。
- キャッシュの制御をファビコンリクエストに適用する。
- ファビコンのリクエストへの特定のエラーページの表示。
- モバイルデバイス向けのファビコンを適切に出力させる。
- デバッグ情報をファビコンのリクエスト時に記録。
- SEO目的でのファビコンのレスポンス時間の計測。
構文
is_favicon();
パラメータ
is_favicon関数にはパラメータはありません。
戻り値
true:リクエストがfavicon.icoである場合。false:それ以外の場合。
関連する関数
この関数を使用可能なバージョン
- ワードプレス 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: ファビコンのリクエスト確認
if (is_favicon()) {
// ファビコンのリクエストです。
header("Content-Type: image/x-icon");
readfile(get_template_directory() . '/favicon.ico');
exit;
}
このコードは、リクエストがファビコンのものであるかを確認し、該当するファビコン画像を出力します。
サンプルコード2: カスタムヘッダーの追加
if (is_favicon()) {
header('Cache-Control: max-age=86400');
}
このコードは、ファビコンのリクエストの場合にキャッシュの設定を追加します。
サンプルコード3: デバッグ情報の記録
if (is_favicon()) {
error_log('Favicon requested at ' . current_time('mysql'));
}
このコードは、ファビコンがリクエストされたときに、その時間をデバッグログに記録します。
サンプルコード4: モバイルファビコンの表示
if (is_favicon()) {
header("Content-Type: image/x-icon");
echo '<link rel="icon" href="' . get_stylesheet_directory_uri() . '/mobile-favicon.ico" />';
exit;
}
このコードは、ファビコンのリクエストに対し、モバイルデバイス用ファビコンのリンクを出力します。
サンプルコード5: エラーページの表示
if (is_favicon()) {
// ファビコンリクエストのエラーページ
wp_die('ファビコンは現在利用できません。');
}
このコードは、ファビコンがリクエストされた際にエラーメッセージを表示します。