こんにちは私はwoocommerceからこのコードを使用して挿入する私のサイトのカートのコンテンツ。誰かがこのコードを修正する方法を知っているので、カートに0を表示すると、カートページの代わりにショップページに移動しますか?
<?php global $woocommerce; ?>
<a class="cart-contents" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e("View your shopping cart", "woothemes"); ?>"><?php echo sprintf(_n("%d item", "%d items", $woocommerce->cart->cart_contents_count, "woothemes"), $woocommerce->cart->cart_contents_count);?> - <?php echo $woocommerce->cart->get_cart_total(); ?></a>
// Ensure cart contents update when products are added to the cart via AJAX (place the following in functions.php)
add_filter("add_to_cart_fragments", "woocommerce_header_add_to_cart_fragment");
function woocommerce_header_add_to_cart_fragment( $fragments ) {
global $woocommerce;
ob_start();
?>
<a class="cart-contents" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e("View your shopping cart", "woothemes"); ?>"><?php echo sprintf(_n("%d item", "%d items", $woocommerce->cart->cart_contents_count, "woothemes"), $woocommerce->cart->cart_contents_count);?> - <?php echo $woocommerce->cart->get_cart_total(); ?></a>
<?php
$fragments["a.cart-contents"] = ob_get_clean();
return $fragments;
}
回答:
回答№1は0カートが空のときに店舗にリダイレクトしたい場合は、次のようにしてアクションフック "template_redirect"を使用できます:
add_action( "template_redirect", "my_template_redirect" );
function my_template_redirect()
{
if ( is_page( wc_get_page_id( "cart" ) ) && sizeof( WC()->cart->get_cart() ) == 0 )
{
wp_redirect( get_permalink( wc_get_page_id( "shop" ) ) );
exit;
}
}
カートの内容を表示するために他のページを使用している場合は、if文の最初の条件を変更して、ページがカートの内容を表示しているかどうかを確認する必要があります。