抜粋テキストの文字数制限【初心者のためのWORDPRESS -06-】
こんにちは こんばんは おはようございます。
デザイナーの野田沢です。
今回も記事投稿部分のカスタマイズにトライです!
抜粋テキストの文字数制限
TOPページなどで、最新記事を数件表示するにあたり、サムネイル画像とタイトルだけだとちょっと味気ないサイトの作りの場合本文も載せたりするわけですが、全文じゃうざったい。
そこで本文は一部を抜粋して掲載したいと思います。
抜粋文自体は
<?php the_excerpt(); ?>
で簡単に表示できます。
ただ、抜粋テキスト数が合わない…。これを編集したいと思います。
functions.phpに下記を追記します。場所はどこでもいいようなので自分のわかりやすいところへ。
// 抜粋テキスト文字数制限 function new_excerpt_mblength($length) { return 70; } add_filter('excerpt_mblength', 'new_excerpt_mblength');
この return 70; 部分が表示文字数の指定です。
サイトに合うように文字数を変更します。
設定自体はこれで問題ないのですが、2つ注意点。
・初期でインストールされているプラグイン「WP Multibyte Patch」を有効にする必要がある。
・インストールされているWPのバージョンを最新にする必要がある。
プラグイン「WP Multibyte Patch」を有効化しないと、functions.phpに追加した設定が効きません。これはマストのようです。
また、WPを最新バージョンにするですが、私の場合これをしないとアイキャッチ画像がうまく設定できないというバグがみつかりました。
WPは最新に越したことはないと思うので、最初にインストールした時に忘れずにやっておきたいですね。
より良い方法を発見
色々模索していく中で上記よりも簡単な方法を発見しました!この方法ならfunctions.phpに記述を加えるだけで作動!カンタン!
プラグインとの連動は一切なし!
// 抜粋テキスト文字数制限 add_filter('the_excerpt', 'my_the_excerpt'); function my_the_excerpt($postContent) { $postContent = mb_strimwidth($postContent, 0, 70, "…","UTF-8"); return $postContent; }
こちらのコードの場合 $postContent, 0, 70 で表示文字数を指定しています。
次に記載しいてる“…”は文字数を超えた時にどう表示するかの指定です。
本文同様タイトルももちろん文字制限ができます。
//タイトルの文字制限 add_filter('the_title', 'my_the_title'); function my_the_title($title, $id) { $title = mb_strimwidth($title, 0, 36, "…","UTF-8"); return $title; }
こちらも本文同様 $title, 0, 36 で文字数を指定しています。
数字以外コピペで実装できてしまうので、とっても簡単!これで投稿記事一覧も統一感のあるデザインにできます!
それでまた次回っ!
過去記事
▶初心者のためのWORDPRESS -05-
▶初心者のためのWORDPRESS -04-
▶初心者のためのWORDPRESS -03-
▶初心者のためのWORDPRESS -02-
▶初心者のためのWORDPRESS -01-