WordPressのタイトル、抜粋文の文字数を制限するカスタマイズ

WordPressのタイトルや抜粋文を主にデザインの関係で制限(トリム)したい時があると思います。

それを実現する、タイトルや抜粋文の文字数を制限するカスタマイズ(コードスニペット)です。

文字数を制限するスニペット

文字数を制限する方法にPHPのmb_strimwidth関数を使います。この関数を使えば文字列を簡単に丸めることが出来ます。第三引数に指定した数(ここでは「80」「140」の部分)でカットされます。

注意したいのは日本語(全角)の場合は1文字2バイト換算な点です。例として、40文字で制限したいなら80、70文字で制限したいなら140と指定します。

もう一つ、第四引数で指定している「”…”」は文字数が制限値に達した時に表示される文字列です。制限時に一切何も表示させたくない場合は「””」と指定して下さい。

参考: PHP: mb_strimwidth – Manual

タイトルの文字数を制限

抜粋文の文字数を制限

フィルターフックで文字数を制限する

フィルターフックを利用すると全ページのタイトル、抜粋文の文字数を制限出来ます。(というかthe_title()the_excerpt()で出力した文字列全てに制限が掛かるようになります)

以下のソースコードをfunctions.phpに記述して下さい。こちらも各々4行目のmb_strimwidth()の第三引数の数値を変えることで制限する文字数を変えられます。

タイトルをフィルターフックで文字制限

抜粋文をフィルターフックで文字制限

これら2つのフィルターフック、the_titlethe_excerptはwp-includes/post-template.phpの118行目、254行目辺りに記述されています。


僕自身がたまに使うので書いておきました。

最終更新日:2014年9月28日

コメント

「何かそこ違うよ」「こうした方が良い」っていう部分があったら指摘して頂けると嬉しいです。

トラックバック

トラックバックは現在ありません。

Trackback: https://increment-log.com/wordpress-title-excerpt-limit/trackback/