WordPressでカスタムフィールド内の改行をそのまま表示させる

Contents

はじめに

改行がうまく反映されずにぐぐっていたらドンピシャな記事がありましたので
リンク貼りますね。

WordPressでカスタムフィールドの改行を反映して表示させる

まちいろ

改行にはPHPの関数「nl2br」

PHPを全く知らずに入ったものからすると、当たり前ですが、初耳〜
そもそもなんて読むの?と思ったらあるもんですね。

えぬえるつーびーあーる
nlはnewlinesの略、brはbr要素(break)。

読み方プロトコル

<?php echo nl2br(get_post_meta($post->ID,'フィールド名',true)); ?>

とはいえ簡単で、これだけでちゃんと表示されます。

ただ、エスケープ処理がされていない!!

エスケープ処理をどこに入れるかが問題

初心者の私からすれば、エスケープ処理自体まだなれない。
そんなこと言ったら、カスタムフィールドすらまだ慣れてない笑

そこにさらに、改行のコードが入る〜〜〜!!!
PHPってそもそもどうやって書くのーーーー!!!!!!!!!

私「なんていうか、どんどんコードが入れ子になるんですけど(´;ω;`)ウッ…」
先輩「PHPの文法自体は問題ないっす!!!」

とのことでしたので。

<?php echo nl2br(esc_html(get_post_meta($post->ID,'フィールド名',true))); ?>

でOKです!

改行とエスケープ処理を入れ替えると

<br /> <br /> 

が表示されちゃいますので、順番が大事です!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA