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

概要

woocommerce_cart_item_nameフィルタは、WooCommerceのショッピングカートにおけるアイテム名をカスタマイズするためのフックです。このフィルタを用いることで、カート内のアイテム名を変更したり、追加情報を付加したりすることができます。また、商品名の表示方法やHTML構造を自由に編集できるため、さまざまな機能を実装する際に便利です。以下のようなシナリオでよく使用されます。

  1. 商品名に特別なスタイルを追加する。
  2. 商品名の横にアイコンや画像を追加する。
  3. 特定の条件下で商品名を隠すまたは変更する。
  4. 商品に関する補足情報を表示する。
  5. カート内のアイテム名にクーポンや割引に関する情報を追加する。
  6. 数量やカスタムオプションに基づいた商品名の動的カスタマイズ。

構文

add_filter('woocommerce_cart_item_name', 'my_custom_cart_item_name', 10, 3);

パラメータ

  • $item_name: カート内のアイテム名(デフォルトは商品名)。
  • $cart_item: カートアイテムの情報が含まれる配列。
  • $cart_item_key: 該当アイテムの一意なキー。

戻り値

フィルタが適用された後のアイテム名(文字列)。

対応バージョン

  • WooCommerce: 2.1.0以降
  • WordPress: 3.6以降

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

アクション 使用可能性
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_cart_item_name', 'add_custom_message_to_cart_item', 10, 3);
function add_custom_message_to_cart_item($item_name, $cart_item, $cart_item_key) {
    $item_name .= '<p>特別オファーのため、購入ありがとうございます!</p>';
    return $item_name;
}

このコードは、カート内の商品名の下に特別なメッセージを追加します。

サンプル2: 商品にアイコンを追加

add_filter('woocommerce_cart_item_name', 'add_icon_to_cart_item', 10, 3);
function add_icon_to_cart_item($item_name, $cart_item, $cart_item_key) {
    $item_name = '<img src="icon_url.png" alt="アイコン" /> ' . $item_name;
    return $item_name;
}

このコードでは、カート内の商品名の前にアイコン画像を追加します。

サンプル3: 商品がセール中の場合のみメッセージを表示

add_filter('woocommerce_cart_item_name', 'sale_notice_cart_item_name', 10, 3);
function sale_notice_cart_item_name($item_name, $cart_item, $cart_item_key) {
    if ($cart_item['data']->is_on_sale()) {
        $item_name .= '<span class="sale-notice">(セール中!)</span>';
    }
    return $item_name;
}

このコードは、カートにある商品がセール中の場合のみ、商品名の後に「(セール中!)」というメッセージを表示します。

サンプル4: カートアイテムの名前フォーマットを変更

add_filter('woocommerce_cart_item_name', 'format_cart_item_name', 10, 3);
function format_cart_item_name($item_name, $cart_item, $cart_item_key) {
    return '<strong>' . $item_name . '</strong>'; // 商品名を強調表示
}

このコードは、カート内の商品名を強調表示(太字)にします。

サンプル5: 商品名のカスタムリンクを作成

add_filter('woocommerce_cart_item_name', 'custom_link_cart_item_name', 10, 3);
function custom_link_cart_item_name($item_name, $cart_item, $cart_item_key) {
    $product_link = get_permalink($cart_item['product_id']);
    return '<a href="' . $product_link . '">' . $item_name . '</a>';
}

このコードでは、カート内の商品名をクリック可能なリンクに変更し、商品ページに遷移できるようにします。

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


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