WordPressのアーカイブページのタイトルにspanタグが表示される

WordPressアップデートでカテゴリー、タグなどのアーカイブにspanタグが表示される場合の原因と対処法メモ。

spanタグが表示されたアーカイブタイトルの例

▲spanタグが表示されたアーカイブタイトルの例

    原因:get_the_archive_title() のアップデートとエスケープ関数

    WordPress5.5より、get_the_archive_title()での出力結果に<span>が追加されるようになりました。

    そのため、エスケープにesc_html()などを使用していた場合、HTMLタグがタイトルに表示されてしまいます。

    PHP
    echo '<h1 class="post-title">' . esc_html( get_the_archive_title() ) . '</h1>';

    対応:エスケープ関数を変更

    エスケープをwp_kses_post()に変更。

    PHP
    echo '<h1 class="post-title">' . wp_kses_post( get_the_archive_title() ) . '</h1>';

    適切なエスケープ関数を上手に使い分けられるようになりたいものです。では。

    サポートが必要ですか?

    ご質問・お見積り依頼はお気軽にどうぞ

    お問い合わせはこちら
    シェア
    野良人 代表
    新免祥太
    1988年岡山生まれ。外食企業のWEB・EC担当を経験したのち、2013年12月より「野良人(のらんど)」の屋号で独立しWEBデザイン・プログラミングなどWEBサイト制作の工程全般を請け負っています。お気軽にご相談ください。
    広告
    次の記事(2020/12/05)
    Local(local by flywheel)がDockerのTLS証明書エラーで起動できずにループする現象に対応
    前の記事(2020/08/25)
    WordPressのユーザープロフィール画面のカスタマイズ
    記事一覧