【问题标题】:How to check the weight of product in cart based on meta_key?如何根据 meta_key 检查购物车中产品的重量?
【发布时间】:2021-06-16 07:34:05
【问题描述】:

我正在寻找一种解决方案来根据 meta 检查购物车中的重量。 例如,它打印::

  • 你的篮子里有 5 公斤是冷的和热的
  • 你的篮子里有 2.5 公斤是其他的

我使用以下循环来检查 meta_key:

$category_check = false;
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
    $product = $cart_item['data'];
    if ( $cold = $product->get_meta('cold_product') or $hot= $product->get_meta( 'hot_product' ) ) {
    $category_check = true;
    break;
    }
}

然后在检查具有特殊元的产品后,我想计算重量。

 if (category_check ) {
        echo 'your basket include:';

     // I stock in this stage 
     // Show total weight of product $cold and $hot
    
}

能否请您给我一些有关创建第二个循环的提示? 事实上,我需要一个像 $new_weight 这样的新变体来容纳 $cold$hot 的产品的总重量。

【问题讨论】:

  • 1) “我使用以下循环检查类别:” 您发布的代码不检查类别。 2) 您希望该消息出现在哪里?具体在哪里?第几页?上面,下面,后面,前面...请阅读How do I ask a good question?,然后写下您的问题并详细说明以创建a Minimal, Reproducible Example
  • 谢谢@7uc1f3r,我真的很惊讶,当我详细询问我的问题时,有人过来说:StackOverflow 不适合做你的个人项目。虽然我只是询问 m 问题的一部分,但你说它并不详细。我只是在寻找完成第二个循环的解决方案。计算 $cold 和 $hot 两种商品的总重量。
  • 在我的评论中我在哪里指出 “StackOverflow 不适合做你的个人项目。” 我只要求澄清你的问题,以便可以给出适当的答案而不是仅仅一些忠告。您个人可能可以理解该建议,但对于 SO 上的某些其他用户而言则无法理解。虽然我们的目的是在 SO 上写出答案,让每个人都能理解,而不仅仅是提问者。

标签: php wordpress woocommerce


【解决方案1】:

好的,我找到了答案,我把它放在这里与其他人分享:

$cat_check = false;
$w= 0;
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
    $product = $cart_item['data'];
    $weight=$product->get_weight() * $cart_item['quantity'];
       if ( $cold = $product->get_meta('cold_product') or $coldsummer = $product->get_meta( 'cold_product_summer' ) ) {
       $cat_check = true;
       $w = $w + $weight;
       }                
}  

然后我用下面的部分打印出来:

if ($cat_check) {
   echo '<p>your basket include: ' . $w . ' kg special products.</p>';
}

【讨论】:

    猜你喜欢
    • 2014-04-29
    • 2014-03-17
    • 1970-01-01
    • 2021-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多