属性値をエスケープし、安全な文字列として出力します。
具体的には、HTMLの中で使われる<や>のような特殊文字を文字参照に変換します。例えば<は<に>は>に変換します。文字参照に変換することで、<や>のようなHTMLにとって特別な意味を持つタグを単なる文字列として扱うことができます。これにより、呼び出すデータに危険な <script> などが仕込まれていてもscriptを実行しないため安全です。
esc_attr($text);似たものにesc_html()がありますが、esc_html()はタグの中身、esc_attr()は属性の値に対して使います。
| 引数 | 必須/任意 | 引数に指定するもの |
|---|---|---|
| 第1引数 $text | 必須 | エスケープする属性(文字列) |
戻り値(返す値):エスケープされた属性を返します。
※表示するにはechoします。
【引数とは】
テンプレートタグ(=関数)を実行する際に、引数を渡すことができるテンプレートタグがあります。引数は、関数の中で使われるので、渡す引数の値によって実行結果が変わってきます。何を処理したいのか、どのようなデータを取得したいのかによって渡す引数が変わります。
【引数について】
属性の値を外部やデータベースから動的に取得して埋め込む場合などに使うことができます。
<?php
$value = '例えばカスタムフィールドから取得した値';
$alt = '例えばカスタムフィールドから取得した値';
?>
<input type="text" value="<?php echo esc_attr($value); ?>">
<img src="<?php echo esc_url(get_theme_file_uri('/img/example.jpg')); ?>" alt="<?php echo esc_attr($alt); ?>">※当サイトでは初期値とデフォルト値の言葉の定義を区別せず、原則統一して初期値を採用しています。