プラグインWooCommerceのwoocommerce_order_item_meta_endアクションの使用方法・解説

概要

woocommerce_order_item_meta_endは、WooCommerce の注文アイテムのメタ情報が表示される直後に実行されるフックです。このアクションは特に、以下のような機能を実装する際に役立ちます。

  1. 注文アイテムのカスタムフィールドの追加
  2. アイテムに関連する追加情報の表示
  3. 注文アイテムのスタイリング変更
  4. 注文詳細ページでのロジックの追加
  5. 管理画面での表示情報の拡張
  6. アイテムごとに異なるカスタマイズの適用

構文

do_action( 'woocommerce_order_item_meta_end', $item_id, $item, $order, $is_meta );

パラメータ

  • $item_id: 注文アイテムのID
  • $item: 注文アイテムのオブジェクト
  • $order: 注文のオブジェクト
  • $is_meta: メタ情報かどうかのフラグ

戻り値

このアクションは値を返さず、純粋にフックとして機能します。

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

  • WooCommerce 2.1.0以降

WordPressのバージョン

  • 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_action( 'woocommerce_order_item_meta_end', 'add_custom_message', 10, 4 );
function add_custom_message( $item_id, $item, $order, $is_meta ) {
    echo '<p>特別オファー!次回のご注文に使えるクーポンをお届けします。</p>';
}

サンプルコード 2: カスタムフィールドの表示

この例では、カスタムフィールドの値を注文アイテムのメタ情報の後に表示します。

add_action( 'woocommerce_order_item_meta_end', 'display_custom_field', 10, 4 );
function display_custom_field( $item_id, $item, $order, $is_meta ) {
    $custom_value = get_post_meta( $item_id, '_custom_field', true );
    if ( $custom_value ) {
        echo '<p>カスタムフィールドの値: ' . esc_html( $custom_value ) . '</p>';
    }
}

サンプルコード 3: アイテムに画像を追加

このサンプルは、注文アイテムの下に関連する画像を追加します。

add_action( 'woocommerce_order_item_meta_end', 'add_item_image', 10, 4 );
function add_item_image( $item_id, $item, $order, $is_meta ) {
    $image_url = wp_get_attachment_url( $item->get_product_id() );
    if ( $image_url ) {
        echo '<img src="' . esc_url( $image_url ) . '" alt="商品画像" style="max-width: 100px;"/>';
    }
}

サンプルコード 4: スタイルを適用

このコードでは、特定のスタイルを注文アイテムに適用しています。

add_action( 'woocommerce_order_item_meta_end', 'apply_custom_styles', 10, 4 );
function apply_custom_styles( $item_id, $item, $order, $is_meta ) {
    echo '<style>.custom-style { color: #FF0000; font-weight: bold; }</style>';
    echo '<p class="custom-style">この商品は特別な製品です!</p>';
}

サンプルコード 5: ロジックの追加

このサンプルでは、特定の条件に基づいてメッセージを表示します。

add_action( 'woocommerce_order_item_meta_end', 'conditional_message', 10, 4 );
function conditional_message( $item_id, $item, $order, $is_meta ) {
    if ( $item->get_total() > 100 ) {
        echo '<p>お祝い!100円以上のお買い上げありがとうございます。</p>';
    }
}

これらのサンプルは、woocommerce_order_item_meta_endアクションを活用して様々なカスタマイズを行う方法を示しています。それぞれのコードは特定の目的のために設計されており、多様な機能を持っています。

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


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