如何更改woocommerce优惠券代码?

时间:2015-12-11 20:16:18

标签: php wordpress woocommerce

我希望优惠券出现在我的购物车总额和优惠券部分。现在我的购物车总额和购物车优惠券部分都会显示优惠券代码。但是我想稍微改变一下。

默认情况下,它会显示"优惠券:优惠券代码,然后显示10美元的删除链接。"

我希望它打印购物车%折扣" 15%折扣"购物车总额和我的优惠券部分。对于我的购物车总数,我不想要"删除链接"出现。我附上一张图片,我希望看起来像那样。

例如,我希望它看起来像这样。

购物车总数 - 折扣15%,然后10.00美元。 购物车优惠券 - 优惠券15%折扣,然后"删除"链接,删除链接是您可以删除优惠券代码。

demonstration

WC-推车的functions.php。

我知道这可以使优惠券发挥作用。如何打印折扣类型。如果我删除"删除"链接,它将删除购物车总额和我的优惠券部分。但我只是希望它在我的购物车总数中删除,我想要"删除"链接显示在我的优惠券部分。怎么样?



/**
 * Get a coupon label
 *
 * @access public
 * @param string $coupon
 */
function wc_cart_totals_coupon_label( $coupon ) {
    if ( is_string( $coupon ) )
        $coupon = new WC_Coupon( $coupon );

    echo apply_filters( 'woocommerce_cart_totals_coupon_label', esc_html( __( 'Coupon:', 'woocommerce' ) . ' ' . $coupon->code ), $coupon );
}

/**
 * Get a coupon value
 *
 * @access public
 * @param string $coupon
 */
function wc_cart_totals_coupon_html( $coupon ) {
    if ( is_string( $coupon ) ) {
        $coupon = new WC_Coupon( $coupon );
    }

    $value  = array();

    if ( $amount = WC()->cart->get_coupon_discount_amount( $coupon->code, WC()->cart->display_cart_ex_tax ) ) {
        $discount_html = wc_price( $amount );
    } else {
        $discount_html = '';
    }

    $value[] = apply_filters( 'woocommerce_coupon_discount_amount_html', $discount_html, $coupon );

    if ( $coupon->enable_free_shipping() ) {
        $value[] = __( 'Free shipping coupon', 'woocommerce' );
    }

    // get rid of empty array elements
    $value = array_filter( $value );
    $value = implode( ', ', $value ) . ' <a href="' . esc_url( add_query_arg( 'remove_coupon', urlencode( $coupon->code ), defined( 'WOOCOMMERCE_CHECKOUT' ) ? WC()->cart->get_checkout_url() : WC()->cart->get_cart_url() ) ) . '" class="woocommerce-remove-coupon" data-coupon="' . esc_attr( $coupon->code ) . '">' . __( '[Remove]', 'woocommerce' ) . '</a>';

    echo apply_filters( 'woocommerce_cart_totals_coupon_html', $value, $coupon );
}
&#13;
&#13;
&#13;

购物车优惠券(cart-totals.php)

&#13;
&#13;
<ul class="cart_totals <?php if ( WC()->customer->has_calculated_shipping() ) echo 'calculated_shipping'; ?>">

    <?php do_action( 'woocommerce_before_cart_totals' ); ?>

    <li>
        <span class="label"><?php _e( 'Subtotal', 'woocommerce' ); ?></span>
        <span class="value"><?php wc_cart_totals_subtotal_html(); ?></span>
    </li>

     <?php foreach ( WC()->cart->get_coupons() as $code => $coupon ) : ?>
        <li class="cart-discount coupon-<?php echo esc_attr( sanitize_title( $code ) ); ?>">
            <span class="label"><?php wc_cart_totals_coupon_label( $coupon ); ?></span>
            <span class="value"><?php wc_cart_totals_coupon_html( $coupon ); ?></span>
        </li>
    <?php endforeach; ?>

  <?php do_action( 'woocommerce_after_cart_totals' ); ?>

</ul>
&#13;
&#13;
&#13;

优惠券部分(cart.php)

&#13;
&#13;
<section class="row-wrap prod-wrap">

    <div class="row-inner">
    <form action="<?php echo esc_url( WC()->cart->get_cart_url() ); ?>" method="post">

    <?php do_action( 'woocommerce_before_cart_table' ); ?>

        <div id="coupon">
          <?php foreach ( WC()->cart->get_coupons() as $code => $coupon ) : ?>
           <li class="cart-discount coupon-<?php echo esc_attr( sanitize_title( $code ) ); ?>">
            <span class="label"><?php wc_cart_totals_coupon_label( $coupon ); ?></span>
            <span class="value"><?php wc_cart_totals_coupon_html( $coupon ); ?></span>
           </li>
        <?php endforeach; ?>
     </div>
  <?php do_action( 'woocommerce_after_cart_table' ); ?>

    </form>
</div>
</section>
&#13;
&#13;
&#13;

0 个答案:

没有答案