ワードプレスのthe_excerptフィルタの使用方法・解説

概要

the_excerpt フィルタは、投稿情報の抜粋記事を表示する際に非常に便利な機能です。このフィルタを使用することで、投稿の抜粋を変更したり、特定の条件に基づいて情報を追加したりすることができます。以下はこのフィルタがよく使われる機能の例です:

  1. 投稿の抜粋にカスタムHTMLを追加する。
  2. 特定の投稿タイプに対して異なるスタイルを適用する。
  3. 抜粋の長さをカスタマイズする。
  4. 特定のキーワードに基づいて抜粋をフィルタリングする。
  5. カスタムフィールドのデータを抜粋に含める。
  6. 抜粋にアイキャッチ画像を追加する。
  7. 外部APIからのデータを抜粋に統合する。
  8. ユーザーの役割に基づいて表示内容を変更する。

構文

add_filter('the_excerpt', 'フィルターフィールド名');

パラメータ

  • $post_excerpt – 投稿の抜粋(文字列)。
  • $post – 投稿オブジェクト(オプション)。指定されていない場合、グローバル $post が使用される。

戻り値

  • イベントとして、フィルター処理された投稿の抜粋(文字列)を返します。

関連する関数

the_excerpt

使用可能なバージョン

  • 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);
});

このサンプルコードは、投稿の抜粋を全て大文字に変換します。

この関数について質問する


上の計算式の答えを入力してください