excerpt_more フックの使い方|説明・引数・注意点

説明

excerpt_more は、自動生成される抜粋の末尾の文字列を変更するフィルターです。

基本構文

apply_filters( 'excerpt_more', string $more_string )

引数

  • $more_string:末尾に付く文字列(既定は […])

戻り値

末尾の文字列を返します。

使い方(サンプル)

add_filter( 'excerpt_more', function() {
	return '…';
} );

注意点

  • 手動で入力した抜粋には効きません。

実務での使いどころ

  • 自動で作る抜粋の、末尾の文字(既定は「[…]」)を、変えるとき。
  • 「続きを読む」のリンクを、付けるとき。

よくあるミスと対処

  • 手動で入力した抜粋には、効かない。
  • 文字列を返していない。
  • リンクのURLを、エスケープしていない。

NG例

add_filter( 'excerpt_more', function () {
	echo '…'; // 返さず、出力している
} );

OK例

add_filter( 'excerpt_more', function () {
	return '… <a href="' . esc_url( get_permalink() ) . '">続きを読む</a>';
} );

使い分け早見表

フィルター 加工する対象
excerpt_more 自動で作る抜粋の、末尾の文字
excerpt_length 自動で作る抜粋の、長さ
get_the_excerpt() 抜粋を、取得する

関連項目

excerpt_length、the_excerpt()、add_filter()

公式リファレンス:excerpt_more | WordPress Developer Resources

コメント

タイトルとURLをコピーしました