【WordPress】タイトルや本文、抜粋の文字数を調整する

迷える黒猫くん
迷える黒猫くん

投稿のタイトルや本文が長すぎて一覧ページで表示したとき表示が崩れることがあるニャ。。

タイトルや本文、抜粋の文字数が長すぎるとアーカイブページで表示が崩れることがあります。自作のテーマを作っていて、投稿のサンプルを入れて表示確認をすることがあるかと思います。例えば「テーマユニットテストデータ」を使うとこのような意地悪なページがあります。

こんな長いタイトルをつけることは稀でしょうが、一応対応しておく必要があります。
今回は関数で作成しますのでこちらを使えば各ページ使いまわせますし、ページごとに文字数も変更可能です。

コード

functions.php

まず関数を作りたいのでfunctions.php に以下の記述を加えます。

// タイトルの文字数が$num文字を超えたら省略して[...]を付与する
function title_excerpt($num)
{
  echo wp_trim_words( get_the_title(), $num , '…' );
}

$numを変数として与えてあるので各ページで数字を入れてあげればその数字の文字数に調整が可能です。非常に簡単ですね!

archive.php

それでは具体的に一覧ページコードを書いていきます。タイトルを呼び出したいところ、今までこのように記入していた箇所

<?php the_title(); ?>

に指定したい文字数制限(今回は40文字に指定)を加えるためfunctions.php に記載した関数を呼び出します。

<?php title_excerpt(40); ?>

こちらで先ほどの表示が以下のように最適化されました!

コメント

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