概要
woocommerce_cart_item_name
フィルタは、WooCommerceのショッピングカートにおけるアイテム名をカスタマイズするためのフックです。このフィルタを用いることで、カート内のアイテム名を変更したり、追加情報を付加したりすることができます。また、商品名の表示方法やHTML構造を自由に編集できるため、さまざまな機能を実装する際に便利です。以下のようなシナリオでよく使用されます。
- 商品名に特別なスタイルを追加する。
- 商品名の横にアイコンや画像を追加する。
- 特定の条件下で商品名を隠すまたは変更する。
- 商品に関する補足情報を表示する。
- カート内のアイテム名にクーポンや割引に関する情報を追加する。
- 数量やカスタムオプションに基づいた商品名の動的カスタマイズ。
構文
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>';
}
このコードでは、カート内の商品名をクリック可能なリンクに変更し、商品ページに遷移できるようにします。