【WordPress】投稿記事の抜粋文を表示させるthe_excerpt()の使い方メモ
こんにちは!福岡でホームページ制作を行なうシンス株式会社の越水です。
使うたびに何度もググってるのでメモしておきます。
WordPressではthe_excerptというテンプレートタグを使用すると記事の抜粋文が表示できるようになります。
「抜粋文」というのはトップページなどによくある、記事一覧で各記事の最初の〇〇文字を表示したりするアレです。
使い方を覚えればthe_excerptで出力する文字数を設定したり、末尾の文言を変更したり記事リンクを設置したりできます。
the_excerptの使い方
まず日本語環境のWordPressは英語と違って半角全角があるので、日本語版WordPressに含まれているWP Multibyte Patchプラグインの有効化を忘れないでおきましょう。
有効化すれば次のタグが記述された箇所に記事冒頭からの抜粋文が表示されます。文字数はデフォルトで110文字です。
1 | <?php the_excerpt(); ?> |
WordPressでは記事投稿画面の右上にある「表示オプション」から、抜粋文のみを入力する「抜粋」という入力欄を使用することもできます。
the_excerpt()はこの「抜粋」から入力した文章があればそちらの文章を、なければ本文から任意の文字数を抜き出して表示させるようになっています。
抜粋する文字数を変更する
抜粋文の長さを変更したければfunctions.phpに以下のように記述しましょう。
1 2 3 4 | function new_excerpt_mblength($length) { return 50; //抜粋する文字数を50文字に設定 } add_filter('excerpt_mblength', 'new_excerpt_mblength'); |
抜粋文の末尾にある文字列を変更する
設定した文字数を超えると抜粋文の最後に[…]という文字列が表示されますが、この文字列を変更したい場合は以下のコードをfunctions.phpへ追加してください。
1 2 3 4 | function new_excerpt_more($more) { return '続きを読む'; } add_filter('excerpt_more', 'new_excerpt_more'); |
その記事へのリンクを追加したい場合は以下のコードをfunctions.phpへ書いてください。
1 2 3 4 | function new_excerpt_more($post) { return '<a href="'. get_permalink($post->ID) . '">' . '続きを読む' . '</a>'; } add_filter('excerpt_more', 'new_excerpt_more'); |
抜粋文とリンクを表示させたい箇所には以下のコードを記述しましょう。
1 2 3 4 5 6 7 8 9 10 | <?php if( has_excerpt() ){ the_excerpt(); echo '<a href="'; the_permalink(); echo '">続きを読む</a>'; } else { the_excerpt(); } ?> |
参考URL
テンプレートタグ/the excerpt – WordPress Codex 日本語版
WordPressの抜粋を表示させるthe_excerpt()の使い方やそのカスタマイズなど色々 | bl6.jp
福岡市の中小企業様向けのホームページ制作を得意としております。