【发布时间】:2018-10-13 12:37:48
【问题描述】:
我正在尝试显示产品的变体是否已在购物车中(在单个产品页面中)。产品 ID 与购物车对象中的产品的简单比较不适用于可变产品,因为变体 ID 是使用 ajax 加载的。
这是我的代码,适用于产品类型不是变量的情况。
<?php
/*
* Check if Product Already In Cart
*/
function woo_in_cart( $product_id ) {
global $woocommerce;
if ( !isset($product_id) ) {
return false;
}
foreach( $woocommerce->cart->get_cart() as $cart_item ) {
if ( $cart_item['product_id'] === $product_id ){
return true;
} else {
return false;
}
}
}
有没有办法让它在没有 jQuery 的情况下工作?
【问题讨论】:
-
所以只是为了澄清这一点:你想用php(在后端)检查在后端时动态添加到前端(客户端)的新产品吗?你有两个解决方案:1. 在前端做,2. 创建一个 ajax 并在后端做(但不会是初始时间)
-
@Edwin 我打算在将产品添加到购物车后或浏览产品页面时显示文本(如果产品已经在购物车中)。该功能适用于简单产品,因为产品 ID 和购物车项目 ID 相同。但是对于可变产品,变体 id 和产品 id 不存在。
标签: php jquery wordpress woocommerce variations