[WordPress] トップ、カテゴリページの全文表示に「続きを読む」を自動で入れる

2018年7月29日

テーマ「Twenty ~」(Twenty Fifteen、Twenty Sixteen、Twenty Seventeen等)や、ダウンロードした別のテーマを使用していても、トップページ、またはカテゴリで絞ったページを表示すると投稿記事が全て全文表示されてしまい、タラタラと長くページが表示されてしまうことがあります。

これらを自動で「続きを読む」を表示し、抜粋表示するように設定したいと思います。

「外観」>「テーマの編集」からコードを修正する

※ コードを修正するので、「安全のため、事前にファイルをバックアップしておきたい!」と言う方はFTPクライアントなどでファイルのバックアップ取得をお願いします。

今回は「Twenty Sixteen」を例として使用していきます。

「外観」から「テーマの編集」を選択します。

編集するファイルは「content.php」

「template-parts」フォルダ内にある「content.php」を選択します。

the_content() から the_excerpt() へ

「content.php」ファイル内で使用している「the_content()」関数を「the_excerpt()」に置き換えます。

2018年07月29日現在、27行目にあたります。

「content」部分を「excerpt」に置き換えるだけです。

  • 変更前
    
    
    
    <div class="entry-content">
      <?php
        /* translators: %s: Name of current post */
        the_content(
          sprintf(
            __( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'twentysixteen' ),
            get_the_title()
          )
        );
    
  • 変更後
    
    
    
    <div class="entry-content">
      <?php
        /* translators: %s: Name of current post */
        the_excerpt(
          sprintf(
            __( 'Continue reading<span class="screen-reader-text"> "%s"</span>', 'twentysixteen' ),
            get_the_title()
          )
        );
    

「excerpt」は「抜粋する」といった意味があります。

最後に「ファイルを更新」ボタンをクリックすると反映されます。

 

「WP Multibyte Patch」プラグインを有効にする

上記設定だけでも抜粋表示されるようになりますが、1投稿ごとに表示される抜粋文がなんだか短いです。。。

例)

こんちには。今日も暑いですね。これから …

例は極端に短いですが、本来、120文字表示されるはずが、マルチバイト文字を利用しているため、うまく文字数がカウントされていません。

 

ここで「WP Multibyte Patch」プラグインをインストールし、有効化しておくことで短かった抜粋表示が正しく表示されるようになります!

是非、お試しください。

↓ クリックしてもらえると頑張れます