WordPressで本文から指定した文字数を表示する方法

WordPressで、更新日時、記事タイトルの他に本文から指定文字数を表示したい事があります。その表示する方法で、ちょっとだけハマったのでメモ。

確認環境

  • WordPress3.2.1

コード

以下のコードをループ内に記述してください。

post_content), 0, 100, "UTF-8"); ? >

解説

ポイントは3つ。

  • substrではなくmb_substrにすること。substrはマルチバイト文字(日本語など)を正しく処理してくれません。
  • 上記コードの「100」の部分が指定文字数になります。
  • 文字コードを指定すること。今時ほとんどUTF-8だと思うので、それを前提に記述していますが。文字コードを指定しないと、最後の1文字が1バイト分足らなくなる場合がまれにあり、文字化けしてしてしまいます。