【WP】WordPressの本文抜粋・本文の一部を取得する

【WP】WordPressの本文抜粋・本文の一部を取得するWordPressで投稿された記事の本文の一部「抜粋」を取得するために、テンプレートタグthe_excerpt()とget_the_excerpt()があります。the_excerpt()とget_the_excerpt()は、投稿時に抜粋欄へ入力があればその内容が表示され、抜粋が抜粋を入力されていない場合は投稿内容の最初の55個の単語まで表示されます。英語では単語が空白スペースで区切られているため、単語数をカウントできますが、抜粋や本文が日本語の場合は、正しく単語が判別されず本文をすべて表示されてしまうことがあり、正しく表示するためには「WP Multibyte Patch」のプラグインを有効にしておく必要があります。「WP Multibyte Patch」のプラグインを有効になっている場合、the_excerpt() とget_the_excerpt()は、110文字を表示します。また、the_excerpt() とget_the_excerpt()では取得された文字の最後に[…] を付与します。

the_excerpt()とget_the_excerpt()の特徴

the_excerpt()とget_the_excerpt()は、HTMLタグ、ショートコードのタグは表示されずに、表示されます。どちらもループの中での利用になります。

the_excerpt()の使い方

the_excerpt()は、echoを使わず抜粋を表示することができます。また、表示される際は前後に<p>></p>が付与され表示されます。

<?php the_excerpt(); ?>

get_the_excerpt()の使い方

get_the_excerpt()は、ページに出力することがないため、変数に値を読み込み文字列を加工することや、echoで表示することができます。

<?php echo get_the_excerpt(); ?>

the_excerpt()とget_the_excerpt()で取得できる文字数を変えたい場合

function.php内に以下のコードを追記することで取得できる文字数を変えることができます。

function wpdocs_custom_excerpt_length( $length ) {
    return 200;
}
add_filter( 'excerpt_length', 'wpdocs_custom_excerpt_length', 999 );

ページごとに表示数を変えたい場合は、get_the_excerpt()で取得後、mb_substrを使い文字数を制御することができます。

<?php echo mb_substr(get_the_excerpt(), 0, 100); ?>

関連記事

スマートフォンで動画を作成する動画編集アプリ

最近はスマートフォンで写真や動画を撮影してSNSや動画投稿サイトなどへ手軽に公開できるようになりました。 そこで今回はスマートフォンで動画を編集することができるアプリをまとめてみました。 Video Collage フレームに写真や動画を当てはめてコラージュのよ...続きを読む

2015.03.05動画制作

【フォト】吉田町川尻海岸『幸福呼ぶ鳥居~初日の出~』

静岡県吉田町にある川尻海岸では年始の期間限定で『幸福呼ぶ鳥居』がお目見えします。鳥居に朝日が昇る様子は幻想的です。初日の出の日は、多くの方々でにぎわっていました。 フォトギャラリー ※写真をクリックすると拡大表示します。 [gallery link="file" col...続きを読む

2017.01.01フォトギャラリー

【WP】モバイル端末用にテーマを切り替えるプラグインのまとめ

先日のGoogleのウェブマスター向け公式ブログ「検索結果をもっとモバイルフレンドリーに」の記事にもあったように、モバイル端末によるウェブサイトの利用がシェアを伸ばしてきていることでウェブサイトのモバイル端末への最適化も重要な課題になってきていると思われます。 今回は、...続きを読む

2015.03.20WordPress

【WP】WordPressのアーカイブリストの「年月」表示をカスタマイズする

WordPressでは投稿された記事に対して、年別や月別のアーカイブを生成できます。アーカイブのリスト表示は2014年1月というように掲載されますが、年や月の表示を変えて表示したいこともあります。 アーカイブの日付表示 投稿された記事の日付の形式はWordPr...続きを読む

2015.02.19WordPress

【CSS】スタイルシートだけで縦方向と横方向でセンタリングする方法

WEBデザインで画像やレイアウトした要素を中央に揃えるレイアウトを作ることがよくあります。実際にHTMLにコーディングをするときに、横位置をセンターにする場合や、縦位置をセンターにする場合などCSSだけで実現する方法をまとめてみました。 { margin: 0 auto...続きを読む

2015.02.07HTMLコーディング