MENU

the_content()– Function –

the_content()は、WordPressの投稿本文を表示するためのテンプレートタグです。

目次

機能の説明

the_content()は、現在表示中の投稿またはページの「本文」を取得し、HTMLを適用して表示します。記事内の段落やショートコードが適切に解釈されて出力されるため、投稿のメインコンテンツを表示する際に使用します。

シンプルなコード例

the_content();

このコードは、現在表示中の投稿またはページの本文を出力します。

使い方の解説

the_content()は、ループ内で使用されるのが一般的です。WordPressテーマのsingle.phppage.phpindex.phpなどにおいて、各投稿の本文を表示する際に使われます。

引数

$more_link_text

<!--more-->タグが使われているときに、続きを表示するリンクのテキストをカスタマイズします。

$strip_teaser

冒頭のテキスト(ティーザー)を非表示にするかどうかを指定します。デフォルトはfalse

戻り値

void

the_content()は直接HTMLを出力します。戻り値はありません。HTMLとして出力されるため、エスケープ処理が不要な場合がほとんどです。

オプション

the_content()自体にオプションはありませんが、ショートコードや<!--more-->タグの影響を受けてコンテンツが表示されます。

使用例

if ( have_posts() ) {
    while ( have_posts() ) {
        the_post();
        the_title( '<h1>', '</h1>' );
        the_content( '続きを読む', true );
    }
}

このコードは、WordPressのメインループで各投稿のタイトルと本文を表示します。the_content()には、<!--more-->タグがある場合に「続きを読む」というリンクを表示するようにしています。

一緒に使うことが多い関連タグ

get_the_content()

get_the_content()は、投稿本文を取得するテンプレートタグで、the_content()とは異なり、直接HTMLを出力せずに戻り値として返します。

$content = get_the_content();
echo apply_filters( 'the_content', $content );

このコードでは、get_the_content()で取得した本文をapply_filters()を使ってフィルタリングした後に出力しています。

追加情報を取得したい場合

投稿本文からショートコードを解釈したり、特定のHTML要素をフィルタリングしたい場合、apply_filters()関数を使うことが推奨されます。

get_the_excerpt()で取得できる情報

$excerpt = get_the_excerpt();
echo '<p>' . esc_html( $excerpt ) . '</p>';

出力できる情報

  • excerpt: 投稿の抜粋
  • custom_excerpt_length: 抜粋の文字数(add_filter()で調整可能)

想定されるトラブル

ショートコードが解釈されない

add_filter('the_content', 'do_shortcode');を使用してショートコードを有効化する。

<!--more-->タグが正しく表示されない

テーマでthe_content()を使っていることを確認し、$moreグローバル変数が適切に設定されているか確認してください。

Q&A

the_content()でショートコードを有効化するには?

add_filter( 'the_content', 'do_shortcode' );を使います。

HTMLタグを取り除きたい場合はどうすればいいですか?

strip_tags()関数を使ってHTMLタグを取り除くことができます。

<!--more-->タグが機能しないのはなぜですか?

ループ内でthe_content()を正しく使用していないか、$moreグローバル変数が誤って設定されている可能性があります。

まとめ

the_content()は、WordPressの投稿本文を表示するための基本的なテンプレートタグで、ループ内で使用することが推奨されます。

ショートコードの解釈や<!--more-->タグのサポートも行います。

the_content()を正しく使うことで、ユーザーに適切なコンテンツを提供し、SEOにも効果的なサイト運営が可能です。

カスタマイズ例

1