在激烈競爭的電子商務市場中,提供附加價值以提升顧客的購物體驗是關鍵策略之一。WooCommerce 的自動贈品功能,尤其是根據購買數量提供贈品,可以有效地促進銷售並增強客戶忠誠度。本文將介紹如何在 WooCommerce 中設置這一功能。
為什麼要強調購買數量?
購買數量是制定促銷策略的重要指標。當顧客購買的數量達到特定的門檻時,自動提供贈品不僅激勵顧客增加購買量,還提高了他們的滿意度。這不僅能促進即時銷售,也有助於提高顧客的回購率。
如何設置 WooCommerce 自動贈品功能?
以下步驟將幫助您設置 WooCommerce 自動贈品功能:
- 安裝與啟用程式碼將以下程式碼添加到主題的
functions.php
文件或自訂插件中,為產品新增自定義欄位來設置贈品條件。 - 設置產品贈品條件
- 進入 WooCommerce 的產品編輯頁面。
- 在「一般」設置頁面中,找到「Enable Gift Conditions」勾選框,勾選以啟用此功能。
- 在「Gift Conditions」欄位中輸入贈品條件,格式為
購買數量:贈品ID
,例如2:61028,5:61521
。這樣設置可以根據不同的購買數量自動選擇對應的贈品。
// 添加自定義欄位至產品編輯頁面,並將啟用選項放在最上面 add_action('woocommerce_product_options_general_product_data', 'add_custom_gift_fields_v2'); function add_custom_gift_fields_v2() { echo '<div class="options_group">'; woocommerce_wp_checkbox( array( 'id' => '_enable_special_gift_conditions', 'label' => __('Enable Special Gift Conditions', 'woocommerce'), 'description' => __('Check to enable special gift conditions for this product.', 'woocommerce'), 'desc_tip' => true, ) ); woocommerce_wp_text_input( array( 'id' => '_special_gift_conditions', 'label' => __('Special Gift Conditions', 'woocommerce'), 'desc_tip' => 'true', 'description' => __('Enter conditions like 2:61028,5:61521', 'woocommerce'), 'type' => 'text' ) ); echo '</div>'; } // 保存自定義欄位的值 add_action('woocommerce_process_product_meta', 'save_custom_gift_fields_v2'); function save_custom_gift_fields_v2($post_id) { $gift_conditions = isset($_POST['_special_gift_conditions']) ? sanitize_text_field($_POST['_special_gift_conditions']) : ''; $enable_gift_conditions = isset($_POST['_enable_special_gift_conditions']) ? 'yes' : 'no'; update_post_meta($post_id, '_special_gift_conditions', $gift_conditions); update_post_meta($post_id, '_enable_special_gift_conditions', $enable_gift_conditions); } // 在購物車更新後檢查贈品條件 add_action('woocommerce_cart_updated', 'update_cart_with_special_gifts'); function update_cart_with_special_gifts() { $cart = WC()->cart; $gift_ids_to_add = array(); $gift_ids_in_cart = array(); // 儲存已查詢過的商品贈品條件,避免重複查詢 $product_gift_conditions = array(); foreach ($cart->get_cart() as $cart_item_key => $cart_item) { $product_id = $cart_item['product_id']; $quantity = $cart_item['quantity']; if (!isset($product_gift_conditions[$product_id])) { $product_gift_conditions[$product_id] = get_post_meta($product_id, '_special_gift_conditions', true); } // 檢查是否啟用贈品條件 $enable_gift_conditions = get_post_meta($product_id, '_enable_special_gift_conditions', true); if ($enable_gift_conditions === 'yes') { $gift_conditions = $product_gift_conditions[$product_id]; $best_gift_product_id = null; $highest_required_qty = 0; if (!empty($gift_conditions)) { // 解析贈品條件 $conditions = explode(',', $gift_conditions); foreach ($conditions as $condition) { list($required_qty, $gift_product_id) = explode(':', $condition); if ($quantity >= (int)$required_qty && (int)$required_qty > $highest_required_qty) { $highest_required_qty = (int)$required_qty; $best_gift_product_id = $gift_product_id; } } } if ($best_gift_product_id !== null) { $gift_ids_to_add[$best_gift_product_id] = true; } } // 收集所有已經在購物車中的贈品 if (isset($cart_item['is_special_gift']) && $cart_item['is_special_gift']) { $gift_ids_in_cart[$product_id] = $cart_item_key; } } // 添加符合最高條件的贈品,但每種贈品只添加一次 foreach ($gift_ids_to_add as $gift_id => $value) { if (!isset($gift_ids_in_cart[$gift_id])) { $cart->add_to_cart($gift_id, 1, '', array(), array('is_special_gift' => true)); } } // 移除不再符合條件的贈品 foreach ($gift_ids_in_cart as $gift_id => $cart_item_key) { if (!isset($gift_ids_to_add[$gift_id])) { $cart->remove_cart_item($cart_item_key); } } } // 將贈品價格設為 0 元並限制數量 add_action('woocommerce_before_calculate_totals', 'apply_special_gift_price_and_quantity'); function apply_special_gift_price_and_quantity($cart) { foreach ($cart->get_cart() as $cart_item_key => $cart_item) { if (isset($cart_item['is_special_gift']) && $cart_item['is_special_gift']) { // 將贈品價格設為 0 $cart_item['data']->set_price(0); // 將贈品數量固定為 1 $cart_item['quantity'] = 1; $cart_item['data']->set_stock_quantity(1); $cart_item['data']->set_sold_individually(true); } } }
功能亮點
- 購買數量促銷策略:根據購買數量提供贈品,激勵顧客購買更多,達成購買門檻後自動獲得贈品,增加購物籃價值。
- 靈活的條件設置:商家可以根據不同的購買量設置不同的贈品條件,並自動選擇最佳贈品方案。
- 提高庫存周轉:透過促銷贈品,協助商家快速清理庫存,提升資金使用效率。
結論
WooCommerce 的自動贈品功能是一個強大的工具,可以根據購買數量提供獎勵,從而提高顧客滿意度和忠誠度。這一功能不僅提升了顧客的購物體驗,還能幫助商家增加銷售額並優化庫存管理。如果您希望提升您的 WooCommerce 商店的競爭力,這個功能將是您的不二選擇。
希望這篇文章能幫助您了解並有效運用 WooCommerce 自動贈品功能。如果有任何疑問或需要進一步的協助,請隨時聯繫我們。