WordPress 投稿の本文や抜粋で字数制限をかける方法

Last update 
/ Posted by Takumi Hirashima

WordPress で投稿の本文や抜粋の出力で字数制限をかける方法を紹介します。

抜粋の出力で字数制限をかける方法

抜粋の文字列から mb_substr を使用して必要な文字列を取り出します。
取り出す文字はバイト数で指定するため、全角文字が含まれる文字列に対して行う場合は注意してください。
※テキストエンコードが “UTF-8” の場合、半角英数一文字1バイト、全角なら一文字2バイト。

<?php echo mb_substr(get_the_excerpt(), 0, 126); //文字列(0から126バイトまで)を取り出します ?>

末尾に「…」を付与する

条件分岐を使って想定した文字数を超えた場合に、文字列の末尾に「…」を付与する方法を紹介します。

<?php 
  //制限をかける値を代入(例:抜粋の場合)
  $excerpt = get_the_excerpt();

  //文字数が126バイト以上なら
  if(mb_strlen($excerpt)>126 ) { //$excerpt が126バイト以上なら
    $excerpt = mb_substr($excerpt,0,126); //文字列(0から126バイトまで)を取り出します
    echo str_replace(array("\r", "\n"), '', $excerpt).・・・; //文字の置き換え(改行の削除)、末尾に「...」を追加
  } else { //文字数が126バイト未満なら
    echo str_replace(array("\r", "\n"), '', $excerpt); //文字の置き換え(改行の削除)
  }
 ?>
スポンサーリンク