strip_tags関数は指定した文字列からhtmlタグを取り除きます。
第一引数にhtmlタグを取り除く文字列、第二引数に取り除かないhtmlタグを指定します。返り値はhtmlタグを取り除いた文字列です。
strip_tags(htmlタグを取り除く文字列, 取り除かないhtmlタグ);
WordPressの投稿のタイトルにhtmlタグが含まれている場合、get_the_title();のechoはhtmlタグをそのまま出力します。そこで画像のalt等に投稿のタイトルを出力する場合は、strip_tags関数でhtmlタグを取り除きます。
<?php
$title = strip_tags(get_the_title());
?>
<img src="<?= get_the_post_thumbnail_url(); ?>" alt="<?= $title; ?>">
なお、WordPressのテンプレートタグであるthe_title_attribute();を利用すれば、strip_tags関数を使用しなくても投稿のタイトルからhtmlタグを取り除けます。
<img src="<?= get_the_post_thumbnail_url(); ?>" alt="<?php the_title_attribute(); ?>">
注意点として、strip_tags関数が除去するのはhtmlタグだけなので、styleタグやscriptタグは中身のコードが残ってしまいます。
<?php
$text = '<style>a {color: red;}</style>
<a href="xxx.html">リンク</a>';
echo strip_tags($text);
?>
実行結果は以下の通りです。
a {color: red;}
リンク
WordPressのテンプレートタグであるwp_strip_all_tags();を利用すれば、styleタグやscriptタグの中身のコードまで取り除けます。
<?php
$text = '<style>a {color: red;}</style>
<a href="xxx.html">リンク</a>';
echo wp_strip_all_tags($text);
?>
実行結果は以下の通りです。
リンク
