WordPressの抜粋って何ですか?
WordPressでは【the_excerpt()】を使うことで、記事の抜粋を表示させることができます。
【the_excerpt()】で表示できる抜粋には、2種類の抜粋があります。
種類1:本文から自動的に取得される抜粋
本文の頭から指定した文字数を取得して表示する抜粋です。
後述する【自分で任意に作成する抜粋】で任意の抜粋を設定しない状態で【the_excerpt()】で抜粋を表示させると、自動的に本文の頭から指定した文字数を取得して表示します。
具体的には、以下のいずれかの内容で取得されます。
- 「続きを読む」タグがある場合=「続きを読む」タグの前までの文章を最大で110文字まで取得。110文字を超える場合は末尾に[…]が表示され、110文字以降は省略される。
- 「続きを読む」タグがない場合=本文の冒頭を最大で110文字まで取得。110文字を超える場合は末尾に[…]が表示され、110文字以降は省略される。
種類2:自分で任意に作成する抜粋
自分で任意に作成した文章を抜粋として表示する方法です。
記事投稿画面の以下の部分に入力した文章が抜粋として表示されます。
自動的に表示される抜粋が嫌な方は、こちらで抜粋を作成してください。
WordPressの抜粋を使用するための基本
抜粋を使用するための手順を解説していきます。
WordPressの抜粋を有効にする方法
まず、抜粋機能を有効にしましょう。
上記の項目はデフォルトで表示されていない可能性があります。
その場合は、表示オプションから【抜粋】を表示させましょう。
記事投稿画面の右上部にある【表示オプション】をクリック、【抜粋】にチャックを入れましょう。
チェックを入れることで【抜粋】項目が投稿画面に表示されます。
WordPressの抜粋を固定ページで使用する方法!
WordPressの抜粋は、デフォルトでは固定ページで使用することができません。
ここでは、Wordpressの抜粋機能を固定ページでも使えるようにする方法をご紹介します。
これからご紹介する1行のコードをfunctions.phpに追記するだけでOKです。
その1行のコードが以下のコードです。
add_post_type_support( 'page', 'excerpt' );
まずは、functions.phpに上記のコードを追記してください。
これだけで、固定ページで抜粋機能が有効になりました。
固定ページの編集画面に【抜粋】の項目が表示されているはずです。
早速確認してみてください。
もしも【抜粋】の項目が表示されていなければ、以下をご確認ください。
編集画面、右上にある【オプション】をクリックしてください。
表示されたエリアに【抜粋】という項目があるかと思います。
恐らく、上記の画像のようにチェックが入っていないかと思います。
赤枠部分にチェックを入れてください。
これで【抜粋】の項目が表示されたはずです。
WordPressの抜粋をサイト上に表示させる方法
抜粋を表示させたい箇所に以下のコードを記述します。
<?php the_excerpt(); ?>
サイト上に抜粋を表示させるための作業はこれだけです。
WordPressの抜粋を使うときはプラグインの「WP Multibyte Patch」が必要
日本語の場合、WordPressの文字数カウントは正常に動作しません。
一種の不具合が生じてしまいます。
WordPressは、文字数をカウントするとき、単語間のスペースを基準にしています。
英語圏の文章はスペースを用いながら文章を書いていきます。
例:I am a man.
日本語の場合は単語間にスペースを用いません。
例:私は男です。
そのため、WordPressは日本語の文字数を上手くカウントできないのです。
この不具合を解消するため、プラグイン【WP Multibyte Patch】を有効化しておきましょう。
このプラグインを有効化しておけば、文字数が正常にカウントされるようになります。
WordPressの抜粋でよく使う3つのカスタマイズ
抜粋周りでよく使うカスタマイズを3つご紹介します。
・抜粋の文字数を制限する。
・抜粋の文末に表示される[…]を変更する。
・抜粋に自動で挿入されるpタグを消す。
個別にみていきましょう。
抜粋の文字数を制限する方法
以下のコードをfunctions.phpに追記します。
function my_excerpt_length($length) {
return 120;
}
add_filter('excerpt_mblength', 'my_excerpt_length');
この時、表示させたい文字数を以下の部分で定義します。
return 120;
上記の赤文字部分が、表示させる文字数を定義している部分です。
この部分の数値をお好きな文字数に変更してください。
上記の場合ですと、最大で120文字が表示されます。
上記の設定をしたにも関わらず、表示される文字数がおかしい場合、文字数が正常にカウントされていない可能性があります。
そんな場合は、プラグイン【WP Multibyte Patch】をインストールして有効化してください。
こちらを行うことで、文字数が正常にカウントされるようになります。
プラグインのインストール方法は、以下のコンテンツを参照してください。
[ryus_blogcard url=”https://takayakondo.com/plugin-installation/”]
抜粋の文末にされる[…]を変更する方法
以下のコードをfunctions.phpに追記します。
// 抜粋末尾の文字列を[…]から変更する
function my_excerpt_more($more) {
return '・・・';
}
add_filter('excerpt_more', 'my_excerpt_more');
この時、末尾に挿入したい文字列を以下の部分で指定します。
return '・・・';
赤文字部分に記入した文字列が、抜粋の末尾に[…]の代わりに表示されます。
上記の場合ですと、文末に「・・・」と表示されます。
抜粋に自動で挿入されるpタグを消す方法
抜粋を表示させるとき、自動的に<p>タグが挿入されます。
抜粋を装飾する時、この<p>タグを邪魔に感じることが非常に多い。
ここでは、自動挿入される<p>タグを削除する方法をご紹介します。
自動挿入される<p>タグを削除したい場合、抜粋を呼び出すコードを変更します。
<?php the_excerpt(); ?>
ではなく、
<?php echo get_the_excerpt(); ?>
上記のコードを使用して抜粋を表示させましょう。
すると、自動挿入される<p>タグが挿入されません。
この辺りのことは、WordPressのthe_excerpt()に付与されるpタグを削除する方法+αも参考にしてください。
まとめ
WordPressの抜粋で知っておくべき基本と3つのカスタマイズをご紹介しました。
WordPressの抜粋周りは、今回ご紹介した内容だけである程度フォローできるかと思います。
functions.phpを操作するカスタマイズがありますので、記述ミスが無いように注意してください。
コメントを残す