← All changes
|
app/Hooks/Handlers/BlockEditors/MiniCartBlockEditor.php
+11
-2
1.3.21
→
1.6.6
View file →
| @@ -92,15 +92,24 @@ | ||
| 92 | 92 | if (!CartHelper::doingInstantCheckout()) { |
| 93 | 93 | $cart = CartHelper::getCart(null, false); |
| 94 | 94 | if ($cart) { |
| 95 | 95 | $cartData = $cart->cart_data ?? []; |
| 96 | - $itemCount = count($cartData); | |
| 97 | 96 | } |
| 98 | 97 | } |
| 99 | 98 | |
| 99 | + $countMode = Arr::get($shortCodeAttribute, 'count_mode', 'distinct_products'); | |
| 100 | 100 | |
| 101 | + if ($countMode === 'total_quantity') { | |
| 102 | + foreach ($cartData as $item) { | |
| 103 | + $itemCount += (int) ($item['quantity'] ?? 1); | |
| 104 | + } | |
| 105 | + } else { | |
| 106 | + $itemCount = count($cartData); | |
| 107 | + } | |
| 108 | + | |
| 101 | 109 | $miniCartRenderer = new MiniCartRenderer($cartData, [ |
| 102 | - 'item_count' => $itemCount | |
| 110 | + 'item_count' => $itemCount, | |
| 111 | + 'count_mode' => $countMode, | |
| 103 | 112 | ]); |
| 104 | 113 | |
| 105 | 114 | ob_start(); |
| 106 | 115 | $miniCartRenderer->renderMiniCart($shortCodeAttribute); |