
目次
allowed_tags()の用途
allowed_tags() は、WordPressの投稿やコメントで使用できるHTMLタグの一覧を表示する関数です。
allowed_tags()の基本情報
| 項目 | 内容 |
|---|---|
| 関数名 | allowed_tags() |
| 定義ファイル | wp-includes/general-template.php |
| 返り値 | なし(HTMLを直接出力) |
| 引数 | なし |
| 対応バージョン | WordPress 1.2 以降 |
allowed_tags()の機能と用途
この関数は、主にコメント投稿フォームや投稿欄の下部などで、「利用可能なHTMLタグ」の説明を表示するために使われます。
出力例(実際のHTML)
You may use these HTML tags and attributes: <a href="" title=""></a> <abbr title=""></abbr> ...※出力内容は、wp_kses_allowed_html() によって許可されているHTMLタグと属性に基づいて生成されます。
allowed_tags()の内部処理の簡易構造
function allowed_tags() {
global $allowedtags;
echo '<p>' . __('You may use these HTML tags and attributes:') . ' <code>' . htmlentities( implode(' ', array_keys($allowedtags) ) ) . '</code></p>';
}解説ポイント
$allowedtagsは、WordPress コアが定義する「許可されたタグと属性」の配列($allowedtags = wp_kses_allowed_html( 'post' );など)です。implode()でタグ名を連結し、<code>タグ内にHTMLエスケープして出力しています。
allowed_tags()の使用シーン
| 使用場所 | 具体例 |
|---|---|
| コメントフォーム下部 | 「使えるHTMLタグ」表示欄 |
| 投稿ガイドライン欄 | 投稿時の注意書きとして |
| カスタム入力画面 | HTML制限の参考表示として |
allowed_tags()の注意点
- 出力専用の関数であり、返り値は得られません。
- マルチバイト属性や独自タグなどは出力されません。
- WordPressのHTMLフィルタリング機構(
kses)の仕様に依存するため、WordPress本体のバージョンやプラグインによって内容が変わることがあります。
allowed_tags()のカスタマイズ例
より詳細に表示したい場合や、返り値を得たい場合は、wp_kses_allowed_html() を使って自作することが可能です:
$tags = wp_kses_allowed_html( 'post' );
foreach ( $tags as $tag => $attributes ) {
echo '<' . $tag;
if ( is_array($attributes) ) {
foreach ( $attributes as $attr => $value ) {
echo ' ' . $attr;
}
}
echo '> ';
}allowed_tags()のまとめ
| 項目 | 内容 |
|---|---|
| 機能 | 投稿やコメントで使えるHTMLタグの一覧を表示 |
| 引数 | なし |
| 戻り値 | なし(HTMLを直接出力) |
| 利用例 | コメント欄下のガイド表示など |
| 補足 | wp_kses_allowed_html() によって制御される |