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

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

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

<?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タグで囲っていく。

ただそれだけ。

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