概要
language_attributesフィルタは、HTMLタグの属性を出力する際に使用されるフィルタです。このフィルタを用いることで、HTMLドキュメントの <html> タグに追加の属性を挿入できます。具体的には、以下のような機能を実装する際によく使われます:
- 多言語対応 (language attributeの設定)
- サポートするブラウザの指定
- 音声読み上げ設定
- カスタムデータ属性の追加
- 特定のテーマやプラグイン向けの属性追加
- SEO対策としての各種属性追加
- スタイルシートやスクリプトの条件付きロード
- カスタム機能を持つHTML属性の追加
構文
apply_filters( 'language_attributes', $output );
パラメータ
$output(string) – 既定のHTML属性の文字列。
戻り値
- (string) – フィルタリングされたHTML属性の文字列。
関連する関数
使用可能なバージョン
- WordPress 1.5以降
コアファイルのパス
wp-includes/general-template.php
サンプルコード
サンプルコード 1
add_filter('language_attributes', 'add_custom_language_attributes');
function add_custom_language_attributes($output) {
return $output . ' data-custom="123"';
}
このコードは、<html> タグにカスタムデータ属性 data-custom を追加するサンプルです。
サンプルコード 2
add_filter('language_attributes', 'add_rtl_attr');
function add_rtl_attr($output) {
if (is_rtl()) {
return $output . ' dir="rtl"';
}
return $output;
}
このコードは、RTL(右から左)の言語の場合に dir="rtl" 属性を追加するサンプルです。
サンプルコード 3
add_filter('language_attributes', 'set_custom_lang');
function set_custom_lang($output) {
return str_replace('lang="en"', 'lang="fr"', $output);
}
このコードは、lang 属性を英語からフランス語に変更するサンプルです。
サンプルコード 4
add_filter('language_attributes', 'custom_theme_attributes');
function custom_theme_attributes($output) {
return $output . ' class="my-custom-class"';
}
このコードは、<html> タグにカスタムクラス my-custom-class を追加するサンプルです。
サンプルコード 5
add_filter('language_attributes', 'add_meta_viewport');
function add_meta_viewport($output) {
return $output . ' meta name="viewport" content="width=device-width, initial-scale=1"';
}
このコードは、ビューポート設定をHTML出力に追加するサンプルです。
この関数のアクションでの使用可能性
| アクション | 使用可能性 |
|---|---|
| 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 | 〇 |
非推奨または削除されたバージョン
特に非推奨や削除されたバージョンは存在しません。