运输方法选择在Woocommerce中复制


Shipping methods select getting duplicated in Woocommerce

我正在建立一个Woocommerce商店。

在Checkout页面中,在Order Review (Your Order)的右侧,默认情况下出现了一个重复的运输方法/成本选择。

这是多余的,因为用户已经在购物车页面上选择了方法/成本。不仅如此,每次用户在Checkout Page中更改shipping选项时,选择都会重复一次。

您可以看到效果,如果您添加一个产品,并进入购物车:http://cccctanger.com/openwalls/catalog/

你知道是怎么回事吗?

理想情况是完全删除Order Review中的选择,因为它是多余的,但我没有在Checkout页面代码中看到它!

// filter hook for include new pages inside the payment method
$get_checkout_url = apply_filters( 'woocommerce_get_checkout_url', WC()->cart->get_checkout_url() ); ?>
<form name="checkout" method="post" class="checkout woocommerce-checkout" action="<?php echo esc_url( $get_checkout_url ); ?>" enctype="multipart/form-data">
    <?php if ( sizeof( $checkout->checkout_fields ) > 0 ) : ?>
        <?php do_action( 'woocommerce_checkout_before_customer_details' ); ?>
        <div class="row" id="customer_details">
            <div class="col-md-6">
                <?php do_action( 'woocommerce_checkout_billing' ); ?>
            </div>
            <div class="col-md-6">
                <?php do_action( 'woocommerce_checkout_shipping' ); ?>
            </div>
        </div>
        <?php do_action( 'woocommerce_checkout_after_customer_details' ); ?>
        <h3 id="order_review_heading"><?php _e( 'Your order', 'woocommerce' ); ?></h3>
    <?php endif; ?>
    <?php do_action( 'woocommerce_checkout_before_order_review' ); ?>
    <div id="order_review" class="woocommerce-checkout-review-order">
        <?php do_action( 'woocommerce_checkout_order_review' ); ?>
    </div>
    <?php do_action( 'woocommerce_checkout_after_order_review' ); ?>
</form>
<?php do_action( 'woocommerce_after_checkout_form', $checkout ); ?>

我已经搞定了!

首先,我用CSS隐藏Checkout页面的Select(s)。它们总是相同的ID,所以非常直接:

form.checkout select#shipping_method_0{
    display: none;
}

然后,在review-order.php中,我添加了一个表行来显示Subtotal和total之间的总运费:

<tr class="order-total">
    <th><?php _e( 'Shipping', 'woocommerce' ); ?></th>
    <td><?php echo WC()->cart->get_cart_shipping_total(); ?></td>
</tr> 

瞧!