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

概要

get_the_modified_authorフィルタは、投稿やページの更新者名を取得する際に用いることができるフィルタです。このフィルタを使用することで、デフォルトの更新者名をカスタマイズしたり、特定の条件に基づいて異なる更新者名を表示させたりすることができます。

使用例

このフィルタは以下のような機能を実装する際によく使用されます。
1. 更新者名をカスタマイズする
2. 特定のユーザーロールに基づいて異なる更新者名を表示する
3. 特定の条件に応じて更新者名を変更する
4. 更新日時と一緒に表示される情報を一元管理する
5. 更新者名を多言語対応にする
6. 投稿の執筆者の情報と混同しないようにする
7. フィードバックやコメントセクションでの表示を調整する
8. 特殊な条件付きで表示を制御する

構文

add_filter( 'get_the_modified_author', 'custom_modified_author', 10, 2 );

パラメータ

  • $author (string): デフォルトの更新者名
  • $post_id (int): 対象の投稿ID

戻り値

  • (string): カスタマイズされた更新者名

関連する関数

https://refwp.com/?titleonly=1&s=get_the_modified_author

使用可能なバージョン

このフィルタは、WordPress 3.0以降で利用可能です。

コアファイルのパス

wp-includes/post.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('get_the_modified_author', function($author) {
    return 'カスタム名';
});

このコードは、すべての投稿の更新者名を「カスタム名」に変更します。

サンプルコード 2: 投稿IDに基づいて更新者名を変更する

add_filter('get_the_modified_author', function($author, $post_id) {
    if ($post_id == 42) {
        return '特別な名前';
    }
    return $author;
}, 10, 2);

投稿IDが42の投稿の場合に、更新者名を「特別な名前」に変更します。

サンプルコード 3: ユーザーロールに基づいて更新者名を変更する

add_filter('get_the_modified_author', function($author) {
    if (current_user_can('administrator')) {
        return '管理者の更新者';
    }
    return $author;
});

管理者ユーザーが更新した場合、更新者名を「管理者の更新者」に変更します。

サンプルコード 4: 更新者名を多言語に対応させる

add_filter('get_the_modified_author', function($author) {
    if (get_locale() === 'ja') {
        return '日本語の名前';
    }
    return $author;
});

日本語のロケールの場合に、更新者名を「日本語の名前」に変更します。

サンプルコード 5: スペシャルコンディションで更新者名を変更

add_filter('get_the_modified_author', function($author, $post_id) {
    $post = get_post($post_id);
    if ($post->post_type === 'page') {
        return 'ページ用の名前';
    }
    return $author;
}, 10, 2);

投稿タイプが「ページ」の場合に、更新者名を「ページ用の名前」に変更します。

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


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