【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); ?>

関連記事

美容室ヒュッゲ様WEBサイト制作

静岡県富士市にある『美容室ヒュッゲ』様のWEBサイトを制作いたしました。お店のナチュラルな雰囲気と、手書きのかわいらしいロゴに合わせて、水彩調のイラストやレースなどを用いてかわいらしいデザインをしました。ヘアギャラリーやスタッフブログなどCMSによる更新コンテンツも充実したホ...続きを読む

2019.06.14WEBサイト制作美容室

【CSS】linear-gradient(グラデーション)を使ったボタン作成

CSSのlinear-gradient()関数を用いることで画像を使わずとも、グラデーション色のボタンを作成することができます。 ※矢印は、「Font Awesome」、文字はGoogle Fontsの「M PLUS Rounded 1c」を組み合わせております。 ボ...続きを読む

2021.02.19CSSHTMLコーディング

ぴんきぃまこ様WEBサイト制作

藤枝市青葉町にあるドックトリミングサロン「ぴんきぃまこ」様のWEBサイトを制作いたしました。ロゴに合わせてピンク色のベースに、大人っぽい可愛らしさを演出できるようにデザインをしました。お店からの最新情報をお届けできるように、CMSで構築し、お知らせやおすすめ商品、スタッフ...続きを読む

2018.06.01WEBサイト制作

【JavaScript】マウスオーバーでTooltips(吹き出し)を表示するライブラリまとめ

グラフィカルユーザインタフェース(GUI)において普及した表現手法のひとつにTooltips(ツールチップ)と呼ばれるものがあります。カーソルを合わせたときに吹き出しなどの小さな枠が表示され、補足の説明が表示される表現方法です。 今回は、Tooltips(吹き出し)を実...続きを読む

2015.03.03HTMLコーディング

【CSS】CSS3による枠線の新しい表現方法

CSS3より定義された「Border Radius」「Border Image」を使うことで角丸のボックスや、罫線の装飾によってこれまで画像で作成していた要素をCSSのみでデザインすることができるようになりました。 角丸(border-radius) 「b...続きを読む

2015.02.08HTMLコーディング