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

概要

woocommerce_email_downloads_column_$COLUMN_ID フィルタは、WooCommerceで商品ダウンロード関連の情報をメールで送信するときに、ダウンロードリンクの表示をカスタマイズするために使用されます。このフックを使うことで、カスタムデータや情報を特定の列に表示させたり、デフォルトの情報を変更することができます。

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

  1. ダウンロード可能商品のリンクカスタマイズ
  2. 特定の条件に基づく表示情報の切り替え
  3. 顧客の取引に基づいたメッセージの追加
  4. カスタムフィールドのデータをメールに表示
  5. ダウンロード期限の表示
  6. 商品のバージョン情報を動的に追加

構文

add_filter('woocommerce_email_downloads_column_$COLUMN_ID', 'your_function_name', 10, 3);

パラメータ

  • $COLUMN_ID: 列のID(文字列)
  • $downloads: ダウンロード商品の配列(配列)
  • $order: 現在の注文オブジェクト(WC_Order)

戻り値

  • 変更された列の内容(文字列)

対応プラグイン・バージョン

  • WooCommerce: バージョン 3.6 以上
  • WordPress: バージョン 5.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_downloads_column_file', 'custom_download_link', 10, 3);
function custom_download_link($file, $downloads, $order) {
    return '<a href="' . esc_url($file) . '" target="_blank">Download</a>';
}

このサンプルコードは、ダウンロードリンクをカスタムのHTMLリンクに置き換え、クリックすると新しいタブで開くようにしています。

サンプルコード 2

add_filter('woocommerce_email_downloads_column_name', 'add_custom_message', 10, 3);
function add_custom_message($name, $downloads, $order) {
    return $name . ' - Enjoy your purchase!';
}

このコードは、ダウンロードアイテムの名前の後ろに「- Enjoy your purchase!」というメッセージを追加します。

サンプルコード 3

add_filter('woocommerce_email_downloads_column_date', 'modify_date_display', 10, 3);
function modify_date_display($date, $downloads, $order) {
    return date('F j, Y', strtotime($date));
}

このサンプルでは、ダウンロード日を「月 日, 年」の形式で表示します。

サンプルコード 4

add_filter('woocommerce_email_downloads_column_expiry', 'display_expiry_notice', 10, 3);
function display_expiry_notice($expiry, $downloads, $order) {
    return 'Expires on: ' . date('F j, Y', strtotime($expiry));
}

このコードは、ダウンロードの有効期限を明示的に表示するものです。

サンプルコード 5

add_filter('woocommerce_email_downloads_column_permission', 'add_permission_info', 10, 3);
function add_permission_info($permission, $downloads, $order) {
    return 'You have permission to download this file.';
}

このサンプルでは、ダウンロードファイルに関する許可メッセージを追加します。

以上のサンプルコードは、講じる機能に応じてダウンロード情報の表示内容を変更する方法を示しています。使用例については、各コードはカスタマイズされたカラム情報の取得や表示を行っており、それぞれ特定の要件に基づいて実装されています。

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


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