初心者コーダーのための
HTML/CSS JavaScript PHP WordPress
難しい言葉や概念より、実践重視の入門ブログ
WordPress

【WordPress】投稿一覧で記事タイトルの出力文字数を制限する方法

【WordPress】タイトルの出力文字制限 タイトルの最大出力文字数を設定しよう!

タイトルをこの幅に1行以内で収めたい!

投稿一覧ページ(アーカイブページ)で表示させる時に、どうしても1行に収めたい場合など、タイトルの出力文字数を制限したくなる場面は多々あります。

もちろん投稿ページ(single.php)ではタイトルは全文表示させておくべきなのですが、今回はそんなタイトルの出力文字数を制限する方法を紹介します。

コードのコピー方法

コード右上のアイコンをクリックすることでコピーできます。

それでは本文へ、レッツゴー!

タイトルの出力文字数を制限する方法

通常記事のタイトルを出力する場合は、

<?php the_title(); ?>

を使いますが、文字数を制限する場合は使いません。

以下をコピペすることで、文字数を制限したタイトルを出力することができます。

<?php
    $title_num = 20;
    if(mb_strlen($post -> post_title, 'UTF-8') > $title_num) {
        $title = mb_substr($post -> post_title, 0, $title_num, 'UTF-8');
        echo $title. '...';
    } else {
        echo $post->post_title;
    }
?>

<?php the_title(); ?>
で出力する部分を、上記に置き換えます。

$title_numで制限する文字数を設定する

$title_numの値が、出力される文字数になります。

サンプルでは現在出力される文字数を20文字までに設定してあるということです。
ここの数字を書き換えることで制限される文字数を自由に変更することができます。

タイトル末尾に出てくる「…」を設定する

サンプルではタイトルが制限文字数を超えた際、タイトルの末尾に「…」が表示されるように設定しています。

【WordPress】投稿一覧で記事タイトルの…
といった形です。

この文字を編集したい場合、
echo $title. ‘…’;
シングルクォーテーションで囲まれた部分を書き換えることで、「…」を変更することができます。