WooCommerce:在购物车和结帐处移动/删除优惠券表格

仿牌独立站出海专家
片段1(PHP + CSS):在WooCommerce购物车页面的“继续结帐”下移动优惠券表单
首先,我们要在“购物车”页面上的“继续付款”按钮下显示一个全新的优惠券表格。使用正确的钩子(“ woocommerce_proceed_to_checkout”)并打印表单的HTML代码,即可轻松完成此操作。


add_action( 'woocommerce_proceed_to_checkout', 'bbloomer_display_coupon_form_below_proceed_checkout', 25 );
 
function bbloomer_display_coupon_form_below_proceed_checkout() {
   ?> 
      <form class="woocommerce-coupon-form" action="<?php echo esc_url( wc_get_cart_url() ); ?>" method="post">
         <?php if ( wc_coupons_enabled() ) { ?>
            <div class="coupon under-proceed">
               <input type="text" name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" style="width: 100%" /> 
               <button type="submit" class="button" name="apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>" style="width: 100%"><?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?></button>
            </div>
         <?php } ?>
      </form>
   <?php
}

/* Hide the default coupon form @ WooCommerce Cart table */
/* I hate to use display:none but there is no other solution */
 
div.coupon:not(.under-proceed) { 
display: none !important; 
}

片段 2(PHP):删除“有优惠券?” 表单@ WooCommerce结帐页面


remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );