概要
woocommerce_decrease_coupon_usage_count
関数は、WooCommerceで使用されるクーポンの使用回数を減少させるために使用されます。この関数は、クーポンの使用状況を追跡し、クーポンが例えば一度しか使用できない場合の管理を行うために重要です。以下のような機能を実装する際によく使われます。
- クーポンの使用制限を管理する
- 過去の購入履歴に基づいて割引を調整する
- クーポンの有効化状態を一元管理する
- 希少性を持たせたプロモーションの実施
- 複数回使用できるクーポンの残回数管理
- ユーザーごとのクーポン使用履歴を検証する
構文
woocommerce_decrease_coupon_usage_count( $coupon_code );
パラメータ
$coupon_code
(string) : 使用回数を減少させたいクーポンのコード。
戻り値
特に戻り値はありませんが、成功した場合はクーポンの使用回数がデータベースで更新されます。
使用可能なプラグインのバージョン
WooCommerce: 3.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
function decrease_coupon_usage_on_order_complete( $order_id ) {
$order = wc_get_order( $order_id );
$coupons = $order->get_used_coupons();
foreach ( $coupons as $coupon_code ) {
woocommerce_decrease_coupon_usage_count( $coupon_code );
}
}
add_action( 'woocommerce_order_status_completed', 'decrease_coupon_usage_on_order_complete' );
このサンプルコードは、注文が完了した時点で使用されたクーポンの使用回数を減少させるためにwoocommerce_decrease_coupon_usage_count
を呼び出します。
(参考: WooCommerce Documentation)
サンプルコード 2
function reduce_coupon_usage_in_admin( $coupon ) {
if ( isset( $_POST['coupon_code'] ) ) {
woocommerce_decrease_coupon_usage_count( sanitize_text_field( $_POST['coupon_code'] ) );
}
}
add_action( 'woocommerce_coupon_options_save', 'reduce_coupon_usage_in_admin' );
このコードは、WooCommerceの管理画面でクーポンのオプションが保存された際に、指定されたクーポンの使用回数を減少させます。
(参考: WooCommerce Code Reference)
サンプルコード 3
function decrease_coupon_on_payment( $order_id ) {
// Get order from ID
$order = wc_get_order( $order_id );
// Check if the order is valid
if ( ! $order ) {
return;
}
// Loop through coupons used in the order
foreach ( $order->get_used_coupons() as $coupon ) {
woocommerce_decrease_coupon_usage_count( $coupon );
}
}
add_action( 'woocommerce_thankyou', 'decrease_coupon_on_payment' );
このサンプルは、支払い完了後に使用されたクーポンを減少させるためのフックを示しています。
(参考: WooCommerce Hooks)
サンプルコード 4
function track_coupon_usage( $user_id, $coupon_code ) {
if ( wc_coupon_exists( $coupon_code ) ) {
woocommerce_decrease_coupon_usage_count( $coupon_code );
}
}
add_action( 'woocommerce_applied_coupon', 'track_coupon_usage', 10, 2 );
このコードは、ユーザーがクーポンを適用すると、その使用回数を記録する機能を提供します。
(参考: WooCommerce Customization)
サンプルコード 5
function visit_coupon_usage() {
// Example coupon code
$coupon_code = 'SUMMER2023';
// Decrease coupon usage count
woocommerce_decrease_coupon_usage_count( $coupon_code );
}
add_action( 'wp_head', 'visit_coupon_usage' );
このサンプルは、特定の条件下でウェブサイトが読み込まれるたびにクーポンの使用回数を減少させる例を示しています。
(参考: WooCommerce Development)