概要
the_excerpt
フィルタは、投稿情報の抜粋記事を表示する際に非常に便利な機能です。このフィルタを使用することで、投稿の抜粋を変更したり、特定の条件に基づいて情報を追加したりすることができます。以下はこのフィルタがよく使われる機能の例です:
- 投稿の抜粋にカスタムHTMLを追加する。
- 特定の投稿タイプに対して異なるスタイルを適用する。
- 抜粋の長さをカスタマイズする。
- 特定のキーワードに基づいて抜粋をフィルタリングする。
- カスタムフィールドのデータを抜粋に含める。
- 抜粋にアイキャッチ画像を追加する。
- 外部APIからのデータを抜粋に統合する。
- ユーザーの役割に基づいて表示内容を変更する。
構文
add_filter('the_excerpt', 'フィルターフィールド名');
パラメータ
$post_excerpt
– 投稿の抜粋(文字列)。$post
– 投稿オブジェクト(オプション)。指定されていない場合、グローバル$post
が使用される。
戻り値
- イベントとして、フィルター処理された投稿の抜粋(文字列)を返します。
関連する関数
使用可能なバージョン
the_excerpt
フィルタはWordPress 1.5以降で使用可能です。
コアファイルのパス
wp-includes/post-template.php
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | 〇 |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル1: 抜粋にカスタムメッセージを追加する
add_filter('the_excerpt', function($post_excerpt) {
return $post_excerpt . '<p>詳しくは記事をお読みください。</p>';
});
このサンプルコードは、投稿の抜粋の最後に「詳しくは記事をお読みください。」というメッセージを追加します。
サンプル2: 抜粋の長さを変更する
add_filter('the_excerpt', function($post_excerpt) {
return wp_trim_words($post_excerpt, 30, '...');
});
このサンプルコードは、抜粋の中の単語数を30単語に制限し、30単語を超える場合は「…」を追加します。
サンプル3: 特定の投稿の抜粋を変更する
add_filter('the_excerpt', function($post_excerpt, $post) {
if ($post->ID === 123) {
return '特別な抜粋内容';
}
return $post_excerpt;
}, 10, 2);
このサンプルコードは、IDが123の投稿の抜粋を「特別な抜粋内容」に置き換えます。
サンプル4: 抜粋にアイキャッチ画像を追加する
add_filter('the_excerpt', function($post_excerpt) {
if (has_post_thumbnail()) {
$post_excerpt = get_the_post_thumbnail() . $post_excerpt;
}
return $post_excerpt;
});
このサンプルコードは、投稿にアイキャッチ画像がある場合、その画像を抜粋の前に追加します。
サンプル5: 投稿の抜粋を大文字に変更する
add_filter('the_excerpt', function($post_excerpt) {
return strtoupper($post_excerpt);
});
このサンプルコードは、投稿の抜粋を全て大文字に変換します。