【WordPress】抜粋の文字数と最後の文字列 […] を変更

抜粋の文字数と最後の文字列を変更

WordPressで投稿をしたとき、抜粋文の文字数はデフォルトのままだと 110 文字となっていています。

また抜粋文の最後の文字列も […] となっていて、見栄えがいいとは言えないでしょう。

それから固定ページにはデフォルトで抜粋機能はついていません。

今回は抜粋に関する以下の方法について解説します。

  1. 抜粋の文字数を変更する
  2. 抜粋文の最後の文字列 […] を変更する
  3. 固定ページにも抜粋機能を追加する
目次

抜粋文を文字数を変更

抜粋文の文字数を変更するには、下記コードを functions.php に記述します。

// ↓ 抜粋の文字数を変更する
function change_excerpt_length($length)
{
    return 80;  //変更する文字数
}
add_filter('excerpt_length', 'change_excerpt_length', 999);

フィルターフック 'excerpt_length'で抜粋の長さを定義しています。

上記コードで抜粋の文字数が 80 文字となりました。

注意点として第3引数は 999 のままにしてください。

999などの優先順位を正しく設定してください。そうしないと、この関数のデフォルトのWordPressフィルターが最後に実行され、ここで設定した内容が上書きされます。
引用元:WordPress.ORG

抜粋文の最後の文字列 […] を変更する

抜粋文の最後の文字列 […] を変更するためには、先程同様 functions.php に下記コードを記述します。

// ↓ 抜粋文の最後の文字列[…]を変更する
function change_excerpt_more($more)
{
    return '……';  //変更後の文字列
}
add_filter('excerpt_more', 'change_excerpt_more');

フィルターフック'excerpt_more'で、抜粋文の後に来る文字列を変更しています。

固定ページにも抜粋機能を追加する

固定ページには抜粋機能がデフォルトで有効にはなっていません。
これを有効化したい場合は functions.php に下記コードを記述します。

// 抜粋機能の有効化
add_post_type_support('page', 'excerpt');

関数のadd_post_type_support( $post_type, $supports )は、投稿タイプ別の機能を設定することができます。

今回の場合は以下のように設定しました。

  • 第1引数 $post_type 'page'として「固定ページ」を指定
  • 第2引数 $supports 'excerpt'として追加する機能に「抜粋」を指定

以上、抜粋機能のカスタマイズについての解説は終わりです。

お疲れさまでした。

目次