WordPressの「抜粋」をphpだけでカスタム

2025年01月12日に作成された記事です。
Cateories: Wordpressの知恵
Tags:

Overview

wordpressの投稿機能に標準で搭載されている「抜粋」の表示をphpだけでカスタムする。

Motivation/Context

WordPressの「抜粋」を表示するときは、組み込み関数である get_the_excerpt() を利用する。

でも、get_the_excerpt()には文字数を制限するオプションがない。

まあ、ないことはないんだけど、境界値より多かろうと少なからろうと文字を付与してしまう。

functions.phpで設定することもできるけど、このファイルは最低限の記述に抑えておきたい。

なので、記事のループの中だけで個別に抜粋の文字数を指定したい。

Get Started!!

// 抜粋は50文字以上あると省略される
$text = get_the_excerpt();
$limit = 50;
if(mb_strlen($text) > $limit) {
  $text = mb_substr($text, 0, $limit, "utf-8").'...';
}
echo $text;

これで、50文字を境界値として「抜粋」を表示できます。

なぜかwordpressの組み込み関数 get_the_excerpt() にいい感じのオプションがなかったので自作しました。

どれもphpの標準関数だと思いますので、どんな環境でも動作する(はず!)

この記事を書いた人

IO

基本バックエンドなエンジニアですが、デザインとかも好きだったり。 休日はどこかのカフェで何かを勉強してます。 さあ、いろんな話をしましょう! 16パーソナリティは指揮官 (ENTJ-A)です!