概要
wp_strip_all_tags
関数は、文字列からHTMLタグを取り除くための関数であり、特にユーザーが入力した内容を安全に表示する際に役立ちます。この関数は、様々な場面で利用され、以下のような機能の実装時によく使われます。
- ユーザーコメントのフィルタリング
- 投稿の抜粋作成
- メタデータの保存
- ウェブサイトのSEO対策
- セキュリティ対策
- データベースに保存する前のクレンジング
- 管理画面のバリデーション
- APIレスポンスの整形
構文
string wp_strip_all_tags( string $str, bool $remove_empty = false );
パラメータ
$str
(string) – HTMLタグを取り除く対象の文字列。$remove_empty
(bool) – 空のタグを削除するかどうかを指定します。デフォルトはfalseです。
戻り値
- (string) – HTMLタグが取り除かれた文字列が返されます。
関連する関数
この関数を使用可能なバージョン
- WordPress 2.9以降
コアファイルのパス
wp-includes/formatting.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: HTMLタグを取り除く基本的な使用例
$str = '<h1>Hello World</h1><p>This is a <strong>test</strong>.</p>';
$clean_str = wp_strip_all_tags($str);
echo $clean_str; // 出力: Hello WorldThis is a test.
このサンプルコードは、HTMLタグを含む文字列からタグを取り除き、クリーンなテキストを出力します。
サンプル2: 空のタグを除去するオプションの使用例
$str = '<div>Content</div><p></p><span></span>';
$clean_str = wp_strip_all_tags($str, true);
echo $clean_str; // 出力: Content
このサンプルでは、空のタグも削除するオプションを指定して、純粋なコンテンツだけを残しています。
サンプル3: ユーザー入力をフィルタリングする例
$user_input = $_POST['comment'];
$safe_comment = wp_strip_all_tags($user_input);
この例は、ユーザーが投稿したコメントからHTMLタグを取り除き、セキュリティを強化しています。
サンプル4: 投稿の抜粋を生成する例
$content = '<h2>Post Title</h2><p>This is the content of the post.</p>';
$excerpt = wp_strip_all_tags($content);
echo $excerpt; // 出力: Post TitleThis is the content of the post.
このサンプルは、投稿内容からHTMLタグを取り除いて、抜粋を生成する際に使用されることを示しています。
サンプル5: APIレスポンスの整形
$raw_data = '<div><h3>Title</h3><p>Details about the item.</p></div>';
$clean_data = wp_strip_all_tags($raw_data);
$response = array('result' => $clean_data);
echo json_encode($response); // 出力: {"result":"TitleDetails about the item."}
このコードは、APIレスポンスを整形し、HTMLタグを取り除いたクリーンなデータをJSONフォーマットで返します。