概要
woocommerce_product_add_to_cart_description
フィルタは、WooCommerce における「カートに追加」ボタンの説明文をカスタマイズするために使用されるフックです。このフィルタを利用することで、ユーザーに対して製品の追加情報を提供したり、特定の条件に基づいてメッセージを変更することができます。具体的には、以下のような機能を実装する際によく使われます:
- 製品の特長を強調するメッセージを追加。
- セールやプロモーションの情報を表示。
- カスタマイズされたユーザーメッセージの表示。
- 在庫状況に基づいたメッセージ変更。
- 利用可能なオプションについての情報提供。
- 購入する際の注意点やアドバイスの提供。
構文
add_filter('woocommerce_product_add_to_cart_description', 'your_custom_function', 10, 2);
パラメータ
$description
(string) – 現在の「カートに追加」ボタンの説明文。$product
(WC_Product) – 現在の製品オブジェクト。
戻り値
- 変更された説明文 (string)。
使用可能なバージョン
- WooCommerce: 2.1.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_product_add_to_cart_description', 'add_custom_message', 10, 2);
function add_custom_message($description, $product) {
return $description . '<p>今なら送料無料でお届け!</p>';
}
このコードは、「カートに追加」ボタンの説明文の後に「今なら送料無料でお届け!」というメッセージを追加します。
サンプル2: 在庫状況に基づくメッセージの変更
add_filter('woocommerce_product_add_to_cart_description', 'conditional_message_based_on_stock', 10, 2);
function conditional_message_based_on_stock($description, $product) {
if (!$product->is_in_stock()) {
return 'この商品は現在在庫切れです。';
}
return $description;
}
このコードは、製品が在庫切れの際に「この商品は現在在庫切れです。」というメッセージを表示します。
サンプル3: カスタマイズされたユーザー向けメッセージ
add_filter('woocommerce_product_add_to_cart_description', 'personalized_user_message', 10, 2);
function personalized_user_message($description, $product) {
$user = wp_get_current_user();
if ($user->exists()) {
return $description . sprintf('<p>こんにちは、%sさん!この製品をお楽しみください。</p>', esc_html($user->display_name));
}
return $description;
}
このコードは、ログイン中のユーザーに対して「こんにちは、[ユーザー名]さん!」というカスタマイズされたメッセージを追加します。
サンプル4: プロモーション情報の追加
add_filter('woocommerce_product_add_to_cart_description', 'add_promotion_info', 10, 2);
function add_promotion_info($description, $product) {
return $description . '<p>今月中に購入すると、10%割引を適用できます!</p>';
}
このコードは、プロモーション情報として「今月中に購入すると、10%割引を適用できます!」というメッセージを追加します。
サンプル5: 特別なイベント情報の提供
add_filter('woocommerce_product_add_to_cart_description', 'add_event_info', 10, 2);
function add_event_info($description, $product) {
return $description . '<p>3月1日から3月14日までの間、特別なイベントが開催されます!</p>';
}
このコードは、特別なイベントの情報を「カートに追加」ボタンの説明文に追加します。