当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

「テンプレートタグ/the excerpt」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(more が表示されるように修正。the_excerpt の説明を先にまとめ、日本語の場合の説明を別段落として注記。ほか微調整)
1行目: 1行目:
* 書式: <?php the_excerpt(); ?>
 
* 説明: 記事の概要を出力。画像などは取り除かれる。
 
* 位置: ループ内
 
* 引数: なし
 
 
 
<div id="Description">
 
<div id="Description">
 
== 説明 ==
 
== 説明 ==
 
</div>
 
</div>
  
投稿の抜粋を最後に三点リーダ () をつけて表示します。この三点リーダは "続きを読む" リンクではありません。投稿作成/編集ページの抜粋文入力欄に抜粋を入力していない場合、投稿内容の最初の55 個の単語が使用されます。ただしこれは英語のように単語間を半角スペースで区切る言語の場合で、日本語のように半角スペースを通常使用しない言語ではすべての内容が出力されてしまうことがあります。WordPress 日本語版ではこの問題を含むマルチバイト関連の問題に対処するために [http://eastcoder.com/code/wp-multibyte-patch WP Multibyte Patch] プラグインを同梱していて、このプラグインを使用するとデフォルトでは110文字までを抜粋文として出力することができます。また、抜粋のコンテンツからは [[用語集#HTML|HTML]] タグと画像は取り除かれます。このタグは[[The Loop|ループ]]内で使用します。
+
このテンプレートタグ <code>'''the_excerpt()'''</code> は、現在の投稿の[[用語集#Excerpt|抜粋]]を、文末に [...](角括弧+三点リーダー)をつけて表示します。この三点リーダーは「続きを読む」リンクではありません。[[Write Post SubPanel|投稿作成/編集画面]]/[[:en:Write Post SubPanel|en]] の抜粋文入力欄に記入してあればそれを、抜粋を入力していない場合は投稿内容の最初の 55個の単語までを表示します('''注''')。また、抜粋のコンテンツからは [[用語集#HTML|HTML]] タグと画像は取り除かれます。このタグは[[The Loop|ループ]]内でのみ使えます。
 +
 
 +
'''注''': これは英語のように単語間を半角スペースで区切る言語の場合であり、日本語のように半角スペースを通常使用しない言語では 55'''単語'''の区切りを判定できず、すべての内容が出力されてしまうことがあります。[[日本語で WordPress#WordPress 日本語版|WordPress 日本語版]]では、この問題を含むマルチバイト関連の問題に対処するために [http://eastcoder.com/code/wp-multibyte-patch WP Multibyte Patch] プラグインを同梱していて、このプラグインを使用するとデフォルトでは110文字までを抜粋文として出力できます。
  
 
<div id="Usage">
 
<div id="Usage">
32行目: 29行目:
 
</div>
 
</div>
  
アーカイブ (<tt>is_archive()</tt>) もしくはカテゴリー ([[Conditional Tags#カテゴリーページ|<tt>is_category()</tt>]]) ページ表示時に [[テンプレートタグ/the_content|the_content()]] タグを the_excerpt() と入れ替える。
+
アーカイブページおよびカテゴリーページ([[Conditional Tags#Any Archive Page|<code>is_archive()</code>]] で判定)表示時に、[[テンプレートタグ/the_content|<code>the_content()</code>]] タグの替わりに <code>the_excerpt()</code> を用いて抜粋文を表示する例です。
 +
<!-- is_archive() にカテゴリページも含まれるので is_category() を消去しました。(ぼの) -->
  
以下の例はバージョン 1.5 以上で動作する。
+
次の例は、WordPress バージョン 1.5 以上で動作します。
  
  <?php if(is_category() || is_archive()) {
+
  <?php if ( is_archive() ) {
the_excerpt();
+
    the_excerpt();
 
  } else {
 
  } else {
the_content();
+
    the_content();
 
  } ?>
 
  } ?>
  
1.5 より以前のバージョンでは以下のコードで動作する :
+
1.5 より前のバージョンでは以下のコードで動作します。
  
  <?php if($cat || $m) {
+
  <?php if ( $cat || $m ) {
the_excerpt();
+
    the_excerpt();
 
  } else {
 
  } else {
the_content();
+
    the_content();
 
  } ?>
 
  } ?>
  
58行目: 56行目:
 
== the_excerpt() と the_content() の比較 ==
 
== the_excerpt() と the_content() の比較 ==
  
[[テンプレートタグ/the_content|the_content()]] 関数のみを使用したほうがいい場合もあります。[[テンプレートタグ/the_content|the_content()]] は <!--More--> タグが使用されているかどうかによって何を表示するかを決定できます。
+
[[テンプレートタグ/the_content|<code>the_content()</code>]] 関数のみを使用したほうがいい場合もあります。[[テンプレートタグ/the_content|<code>the_content()</code>]] は <code><nowiki><!--More--></nowiki></code> タグが本文中で使用されているかどうかによって何を表示するかを決定できます。
<tt><!--More--></tt> タグは投稿/ページを二つに分割して、一覧表示時このタグの前までの部分だけを表示します。
+
<code><nowiki><!--More--></nowiki></code> タグは投稿/ページを二つに分割して、一覧表示時(ブログページ、アーカイブページなど)にこのタグの前までの部分だけを表示します。
単一の投稿/ページを表示するときには <tt><!--More--></tt> は (もちろん) 無視されます。
+
単体の投稿・[[Pages|ページ]]を表示するときには(もちろん) <code><nowiki><!--More--></nowiki></code> は無視され、全文が表示されます。
  
 
<div id="Related">
 
<div id="Related">
70行目: 68行目:
 
{{No Param Tag Footer}}
 
{{No Param Tag Footer}}
  
{{原文|Template Tags/the_excerpt|54582}}<!-- 2008年3月11日 () 11:55 MichaelH 版 -->
+
{{原文|Template Tags/the_excerpt|57916}}<!-- 2008年6月1日 () 01:38 Ramiy 版 -->
  
 
{{DEFAULTSORT:the_excerpt}}
 
{{DEFAULTSORT:the_excerpt}}

2008年6月26日 (木) 20:20時点における版

このテンプレートタグ the_excerpt() は、現在の投稿の抜粋を、文末に [...](角括弧+三点リーダー)をつけて表示します。この三点リーダーは「続きを読む」リンクではありません。投稿作成/編集画面/en の抜粋文入力欄に記入してあればそれを、抜粋を入力していない場合は投稿内容の最初の 55個の単語までを表示します()。また、抜粋のコンテンツからは HTML タグと画像は取り除かれます。このタグはループ内でのみ使えます。

: これは英語のように単語間を半角スペースで区切る言語の場合であり、日本語のように半角スペースを通常使用しない言語では 55単語の区切りを判定できず、すべての内容が出力されてしまうことがあります。WordPress 日本語版では、この問題を含むマルチバイト関連の問題に対処するために WP Multibyte Patch プラグインを同梱していて、このプラグインを使用するとデフォルトでは110文字までを抜粋文として出力できます。

使い方

<?php the_excerpt(); ?>

用例

初期設定での使用

投稿の抜粋を表示します。個別投稿を表示する時以外に the_content() の代わりにループ内で強制的に抜粋を表示するときに使用します。

<?php the_excerpt(); ?>

条件分岐タグとの使用

アーカイブページおよびカテゴリーページ(is_archive() で判定)表示時に、the_content() タグの替わりに the_excerpt() を用いて抜粋文を表示する例です。

次の例は、WordPress バージョン 1.5 以上で動作します。

<?php if ( is_archive() ) {
    the_excerpt();
} else {
    the_content();
} ?>

1.5 より前のバージョンでは以下のコードで動作します。

<?php if ( $cat || $m ) {
    the_excerpt();
} else {
    the_content();
} ?>

パラメータ

このタグはパラメータをとりません。

the_excerpt() と the_content() の比較

the_content() 関数のみを使用したほうがいい場合もあります。the_content()<!--More--> タグが本文中で使用されているかどうかによって何を表示するかを決定できます。 <!--More--> タグは投稿/ページを二つに分割して、一覧表示時(ブログページ、アーカイブページなど)にこのタグの前までの部分だけを表示します。 単体の投稿・ページを表示するときには(もちろん) <!--More--> は無視され、全文が表示されます。


投稿タグ: body_class(), next_image_link(), next_post_link(), next_posts_link(), post_class(), post_password_required(), posts_nav_link(), previous_image_link(), previous_post_link(), previous_posts_link(), single_post_title(), sticky_class(), the_category(), the_category_rss(), the_content(), the_content_rss(), the_excerpt(), the_excerpt_rss(), the_ID(), the_meta(), the_shortlink(), the_tags(), the_title(), the_title_attribute(), the_title_rss(), wp_link_pages(),


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Template Tags/the_excerpt最新版との差分