the excerpt()の文字数はnew_excerpt_lengthで変更できない?

the_excerpt()を利用して、記事の抜粋を表示してみて、文字数がちょっと少ないかなと思ったとき。文字数を変更する方法を検索していて、テンプレートタグ/the excerptに行きついた。説明をふむふむと呼んでいて、 WP Multibyte Patchプラグインを有効化。その後、「new_excerpt_length」を使用した文字数の変更をfunctions.phpに入れて、さあ、見てみよう!となったとき……。

文字数増えた。増えすぎた。

new_excerpt_lengthで設定した文字数変更してみる。

あれ?かわらない?かわらないよ。

で、いろいろ調べてみると「WP Multibyte Patchプラグイン」を有効化しているときには、new_excerpt_lengthで指定した文字数は効かず、「WP Multibyte Patchプラグイン」内に設定された「110文字」が有効になるようです。

これ、同じページにある「new_excerpt_more」による「…」の変更は効くからさー同列で考えてしまうけど(私だけか)、違うものなんですよね。

「WP Multibyte Patchプラグイン」を有効化しているときには、どうしたらよいのか……。

function new_excerpt_length($length) {
     return 60;
}
add_filter('excerpt_mblength', 'new_excerpt_length');

とadd_filterのexcerpt_mblength と変えてあげる必要があります。

この情報は、「記事の抜粋」にばっちり載ってました。困り方が一緒で何か嬉しかった(すみません。ありがとうございます)。

でも、この記事にたどり着くまでに、同じような文字数の変更の記事をいくつかみたのですが、「WP Multibyte Patchプラグイン」を有効にして、add_filter(‘excerpt_length’, ‘new_excerpt_length’);って載せているところがぽつぽつとあったのですが、実際にやってみたのか、2年ぐらいの間に仕様が変わったのかなーと思ったりです。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です