カスタムフィールドで改行が適用されないので、無理やり改行できるようにした。

今、読んでいるここ(カスタムフィールドで吐き出したリード文)を改行できるように修正した。

こんなように。

目次

本記事はリード文をカスタムフィールドで書いている。

が、カスタムフィールドないでいくら改行しても改行が記事に反映されないので、調査、修正してみた。

まず、そもそものコードは

<?php
  $item_lead = get_post_meta($post->ID, 'item_lead', true);
  echo $item_lead;
?>

という形で吐き出していた。

が、これだとcssは当たるが、改行が反映されない。

どうやらこれは調べてみると仕様っぽい。

コードによる解決方法が見つからなかったので、すこし無理やりだが、改行を判定し、pタグで囲むようにした。

実際のコードは、

$values = explode("\n", get_post_meta($post->ID, 'item_lead', true));
  foreach ($values as $value) {
    echo "<p>" . $value . "</p>\n";
  }
?>

という形に修正した。

やっとこととしては、まずexplode()で取得した文字列を改行コードで分割する。

分割した値を回し、pタグで囲っていく。

ただそれだけ。

少し無理やりかもしれないが、改行が反映されるようになった。

 

次に読むおすすめ記事

クラシックエディタでリンク挿入ボタンがうまく機能していなかったので、原因を調査した

この記事に対するコメント

お気軽にコメントを下さい

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