我想在购物车上面显示一个签出按钮,如果有一个以上的项目(不同的SKU)在其中。
我找到了一种方法来隐藏购物车里只有一个项目的按钮。 问题是,同一产品(SKU)的多个版本被视为一个自有项目。
如果我使用下面的代码,即使购物车中有两次单一产品,它也会显示按钮:
<?php if ( WC()->cart->get_cart_contents_count() > 1 ) : ?>
<?php woocommerce_button_proceed_to_checkout(); ?>
<?php endif; ?>
是否有方法根据项目/SKU进行检查?
您可以使用以下方法,获取购物车中不同产品sku的计数:
<?php
$skus = array();
foreach( WC()->cart->get_cart() as $cart_item ) :
$sku = $cart_item['data']->get_sku();
$skus[$sku] = $cart_item['data']->get_id();
endforeach;
if( count($skus) > 1 ) :
woocommerce_button_proceed_to_checkout();
endif; ?>
应该管用。