2
出於某種原因,我在我的CART頁面上獲取了兩個購物車總計..在調試器中沒有錯誤。WooCommerce WordPress插件問題
有噸woocommerce不同的文件。這裏是購物車,totals.php頁。不知道該修復是否在這裏。
<?php
/**
* Cart totals
*
* This template can be overridden by copying it to yourtheme/woocommerce/cart/cart-totals.php.
*
* HOWEVER, on occasion WooCommerce will need to update template files and you (the theme developer).
* will need to copy the new files to your theme to maintain compatibility. We try to do this.
* as little as possible, but it does happen. When this occurs the version of the template file will.
* be bumped and the readme will list any important changes.
*
* @see http://docs.woothemes.com/document/template-structure/
* @author WooThemes
* @package WooCommerce/Templates
* @version 2.3.6
*/
if (! defined('ABSPATH')) {
exit;
}
?>
<div class="cart_totals <?php if (WC()->customer->has_calculated_shipping()) echo 'calculated_shipping'; ?>">
<?php do_action('woocommerce_before_cart_totals'); ?>
<h2><?php _e('Cart Totals', 'woocommerce'); ?></h2>
<table cellspacing="0" class="shop_table shop_table_responsive">
<tr class="cart-subtotal">
<th><?php _e('Subtotal', 'woocommerce'); ?></th>
<td data-title="<?php _e('Subtotal', 'woocommerce'); ?>"><?php wc_cart_totals_subtotal_html(); ?></td>
</tr>
<?php foreach (WC()->cart->get_coupons() as $code => $coupon) : ?>
<tr class="cart-discount coupon-<?php echo esc_attr(sanitize_title($code)); ?>">
<th><?php wc_cart_totals_coupon_label($coupon); ?></th>
<td data-title="<?php wc_cart_totals_coupon_label($coupon); ?>"><?php wc_cart_totals_coupon_html($coupon); ?></td>
</tr>
<?php endforeach; ?>
<?php if (WC()->cart->needs_shipping() && WC()->cart->show_shipping()) : ?>
<?php do_action('woocommerce_cart_totals_before_shipping'); ?>
<?php wc_cart_totals_shipping_html(); ?>
<?php do_action('woocommerce_cart_totals_after_shipping'); ?>
<?php elseif (WC()->cart->needs_shipping() && 'yes' === get_option('woocommerce_enable_shipping_calc')) : ?>
<tr class="shipping">
<th><?php _e('Shipping', 'woocommerce'); ?></th>
<td data-title="<?php _e('Shipping', 'woocommerce'); ?>"><?php woocommerce_shipping_calculator(); ?></td>
</tr>
<?php endif; ?>
<?php foreach (WC()->cart->get_fees() as $fee) : ?>
<tr class="fee">
<th><?php echo esc_html($fee->name); ?></th>
<td data-title="<?php echo esc_html($fee->name); ?>"><?php wc_cart_totals_fee_html($fee); ?></td>
</tr>
<?php endforeach; ?>
<?php if (wc_tax_enabled() && 'excl' === WC()->cart->tax_display_cart) :
$taxable_address = WC()->customer->get_taxable_address();
$estimated_text = WC()->customer->is_customer_outside_base() && ! WC()->customer->has_calculated_shipping()
? sprintf(' <small>(' . __('estimated for %s', 'woocommerce') . ')</small>', WC()->countries->estimated_for_prefix($taxable_address[0]) . WC()->countries->countries[ $taxable_address[0] ])
: '';
if ('itemized' === get_option('woocommerce_tax_total_display')) : ?>
<?php foreach (WC()->cart->get_tax_totals() as $code => $tax) : ?>
<tr class="tax-rate tax-rate-<?php echo sanitize_title($code); ?>">
<th><?php echo esc_html($tax->label) . $estimated_text; ?></th>
<td data-title="<?php echo esc_html($tax->label); ?>"><?php echo wp_kses_post($tax->formatted_amount); ?></td>
</tr>
<?php endforeach; ?>
<?php else : ?>
<tr class="tax-total">
<th><?php echo esc_html(WC()->countries->tax_or_vat()) . $estimated_text; ?></th>
<td data-title="<?php echo esc_html(WC()->countries->tax_or_vat()); ?>"><?php wc_cart_totals_taxes_total_html(); ?></td>
</tr>
<?php endif; ?>
<?php endif; ?>
<?php do_action('woocommerce_cart_totals_before_order_total'); ?>
<tr class="order-total">
<th><?php _e('Total', 'woocommerce'); ?></th>
<td data-title="<?php _e('Total', 'woocommerce'); ?>"><?php wc_cart_totals_order_total_html(); ?></td>
</tr>
<?php do_action('woocommerce_cart_totals_after_order_total'); ?>
</table>
<div class="wc-proceed-to-checkout">
<?php do_action('woocommerce_proceed_to_checkout'); ?>
</div>
<?php do_action('woocommerce_after_cart_totals'); ?>
</div>
這是從woocommerce直接在插件文件夾..該主題還有一個woocommerce文件夾。下面是從主題
<?php
/**
* Cart Page
*
* @author WooThemes
* @package WooCommerce/Templates
* @version 2.1.0
*/
if (! defined('ABSPATH')) exit; // Exit if accessed directly
global $woocommerce;
wc_print_notices();
do_action('woocommerce_before_cart'); ?>
<form action="<?php echo esc_url(WC()->cart->get_cart_url()); ?>" method="post">
<?php do_action('woocommerce_before_cart_table'); ?>
<table class="shop_table cart" cellspacing="0">
<thead>
<tr>
<th class="product-remove"> </th>
<th class="product-thumbnail"> </th>
<th class="product-name"><?php _e('Product', 'woocommerce'); ?></th>
<th class="product-price"><?php _e('Price', 'woocommerce'); ?></th>
<th class="product-quantity"><?php _e('Quantity', 'woocommerce'); ?></th>
<th class="product-subtotal"><?php _e('Total', 'woocommerce'); ?></th>
</tr>
</thead>
<tbody>
<?php do_action('woocommerce_before_cart_contents'); ?>
<?php
foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
$_product = apply_filters('woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key);
$product_id = apply_filters('woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key);
if ($_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters('woocommerce_cart_item_visible', true, $cart_item, $cart_item_key)) {
?>
<tr class="<?php echo esc_attr(apply_filters('woocommerce_cart_item_class', 'cart_item', $cart_item, $cart_item_key)); ?>">
<td class="product-remove">
<?php
echo apply_filters('woocommerce_cart_item_remove_link', sprintf('<a href="%s" class="remove" title="%s">×</a>', esc_url(WC()->cart->get_remove_url($cart_item_key)), __('Remove this item', 'woocommerce')), $cart_item_key);
?>
</td>
<td class="product-thumbnail">
<?php
$thumbnail = apply_filters('woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key);
if (! $_product->is_visible())
echo $thumbnail;
else
printf('<a href="%s">%s</a>', $_product->get_permalink(), $thumbnail);
?>
</td>
<td class="product-name">
<?php
if (! $_product->is_visible())
echo apply_filters('woocommerce_cart_item_name', $_product->get_title(), $cart_item, $cart_item_key);
else
echo apply_filters('woocommerce_cart_item_name', sprintf('<a href="%s">%s</a>', $_product->get_permalink(), $_product->get_title()), $cart_item, $cart_item_key);
// Meta data
echo WC()->cart->get_item_data($cart_item);
// Backorder notification
if ($_product->backorders_require_notification() && $_product->is_on_backorder($cart_item['quantity']))
echo '<p class="backorder_notification">' . __('Available on backorder', 'woocommerce') . '</p>';
?>
</td>
<td class="product-price">
<?php
echo apply_filters('woocommerce_cart_item_price', WC()->cart->get_product_price($_product), $cart_item, $cart_item_key);
?>
</td>
<td class="product-quantity">
<?php
if ($_product->is_sold_individually()) {
$product_quantity = sprintf('1 <input type="hidden" name="cart[%s][qty]" value="1" />', $cart_item_key);
} else {
$product_quantity = woocommerce_quantity_input(array(
'input_name' => "cart[{$cart_item_key}][qty]",
'input_value' => $cart_item['quantity'],
'max_value' => $_product->backorders_allowed() ? '' : $_product->get_stock_quantity(),
), $_product, false);
}
echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key);
?>
</td>
<td class="product-subtotal">
<?php
echo apply_filters('woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal($_product, $cart_item['quantity']), $cart_item, $cart_item_key);
?>
</td>
</tr>
<?php
}
}
do_action('woocommerce_cart_contents');
?>
<tr>
<td colspan="6" class="actions">
<?php if (WC()->cart->coupons_enabled()) { ?>
<div class="coupon">
<label for="coupon_code"><?php _e('Coupon', 'woocommerce'); ?>:</label> <input name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php _e('Enter coupon code', 'woocommerce'); ?>" /> <input type="submit" class="button" name="apply_coupon" value="<?php _e('Apply Coupon', 'woocommerce'); ?>" />
<?php do_action('woocommerce_cart_coupon'); ?>
</div>
<?php } ?>
<input type="submit" class="button" name="update_cart" value="<?php _e('Update Cart', 'woocommerce'); ?>" /> <input type="submit" class="checkout-button button alt wc-forward" name="proceed" value="<?php _e('Proceed to Checkout', 'woocommerce'); ?>" />
<?php do_action('woocommerce_proceed_to_checkout'); ?>
<?php wp_nonce_field('woocommerce-cart'); ?>
</td>
</tr>
<?php do_action('woocommerce_after_cart_contents'); ?>
</tbody>
</table>
<?php do_action('woocommerce_after_cart_table'); ?>
</form>
<div class="cart-collaterals">
<?php do_action('woocommerce_cart_collaterals'); ?>
<?php woocommerce_cart_totals(); ?>
<?php woocommerce_shipping_calculator(); ?>
</div>
<?php do_action('woocommerce_after_cart'); ?>