我正在尝试让我的结帐显示几个表单字段,前提是客户的购物车中有特定类别的产品。到目前为止,我能够使用我在wordimpress上找到的代码获得一半。我在最后添加了一个位以检查类别,当我运行它时它工作,但在页面的其余部分加载之前超时。
<?php
function wordimpress_is_conditional_product_in_cart( $product_id ) {
//Check to see if user has product in cart
global $woocommerce;
//flag no book in cart
$book_in_cart = false;
foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) {
$_product = $values['data'];
$terms = get_the_terms( $_product->id, 'product_cat' );
foreach ($terms as $term) {
$_categoryid = $term->term_id;
}
if ( $_categoryid === 27 ) {
//book is in cart!
$book_in_cart = true;
}
}
return $book_in_cart;
}
?>
有更好的方法可以做到这一点,还是有办法实现这个目的?
答案 0 :(得分:0)
这结果是一个记忆问题。一旦我为wordpress分配了分配的内存,它就没有问题。我会把这个留在这里,因为其他人遇到了这个问题。