プラグインWooCommerceのwoocommerce_email_from_nameフィルタの使用方法・解説

概要

woocommerce_email_from_name フィルタは、WooCommerceのメール機能において、送信者の名前をカスタマイズするために使用されます。このフィルタを使うことで、メールの送信者名を特定の値に設定することができ、ユーザーにとってより親しみやすく、信頼性の高いメッセージを送信することが可能になります。

このフィルタは、以下のような機能を実装する際によく使われます。

  1. 送信者のブランド名を設定する
  2. 顧客サポートの担当者の名前を表示する
  3. 特定のプロモーション名を送信者名として使用する
  4. 送信元を会社名や店舗名に変更する
  5. 個人化されたメールの送信者名を設定する
  6. マーケティングキャンペーンに特化した名前を使用する

構文

add_filter( 'woocommerce_email_from_name', 'custom_email_from_name' );

パラメータ

  • $name (string): 送信元の名前。デフォルトの送信者名がここに渡されます。

戻り値

  • (string): 変更後の送信者名。

使用可能なプラグインWooCommerceのバージョン

  • WooCommerce 2.0 以降

ワードプレスのバージョン

  • WordPress 4.0 以降

この関数のアクションでの使用可能性

アクション 使用可能性
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( 'woocommerce_email_from_name', 'set_fixed_email_from_name' );

function set_fixed_email_from_name( $name ) {
    return 'Your Company Name';
}

このコードは、WooCommerceのすべてのメールの送信者名を「Your Company Name」に設定します。

サンプル 2: ユーザーの名前を使用する

add_filter( 'woocommerce_email_from_name', 'use_user_first_name' );

function use_user_first_name( $name ) {
    $user = wp_get_current_user();
    return $user->first_name;
}

このコードは、現在ログインしているユーザーの名前を送信者名として設定します。

サンプル 3: 毎回異なる名前を設定する

add_filter( 'woocommerce_email_from_name', 'set_different_email_from_name' );

function set_different_email_from_name( $name ) {
    $day = date('l');
    return "Your Company on $day";
}

このコードは、曜日に応じて送信者名を変更します。例えば、「Your Company on Monday」となります。

サンプル 4: カスタムオプションから名前を設定

add_filter( 'woocommerce_email_from_name', 'get_email_from_name_from_settings' );

function get_email_from_name_from_settings( $name ) {
    return get_option('custom_email_sender_name', 'Default Name');
}

このコードは、WordPressの設定から取得した送信者名を使用します。設定がない場合は「Default Name」を使用します。

サンプル 5: 成功メールで特別な名前を設定する

add_filter( 'woocommerce_email_from_name', 'customize_success_email_name', 10, 2 );

function customize_success_email_name( $name, $email_id ) {
    if ( 'customer_completed_order' === $email_id ) {
        return 'Thank You Team';
    }
    return $name;
}

このコードは、注文が完了した際のメール送信者名を「Thank You Team」に変更します。他のメールではデフォルトの名前を継続して使用します。

これらのサンプルコードは、woocommerce_email_from_name フィルタを利用して、さまざまなシナリオにおいて送信者名をカスタマイズする方法を示しています。

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


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