Magento сгруппировал продукты по ценам на уровне
-
16-10-2019 - |
Вопрос
Я создал групповой продукт с двумя простыми продуктами. У вас простой продукт имеет уровень ценообразования. Например,
Simple product -1: tier pricing : Qty Price
2 100
3 75
5 60
Simple product -2: tier pricing: Qty Price
2 110
3 80
<?php if ($_hasAssociatedProducts): ?>
<?php foreach ($_associatedProducts as $_items): ?>
<?php $_items->setData('tier_price',null); ?>
<?php $_tierPrices = $this->getTierPrices($_items); ?>
<?php foreach ($_tierPrices as $key => $value): ?>
<th><?php echo $value['price_qty']; ?></th>
<?php endforeach; ?>
<?php endforeach; ?>
<?php endif; ?>
Приведенный выше код возвращает все QUTY 2 3 5 2 3
. Как мне удалить повторяющиеся значения «Qty» и показать только уникальные значения?
Решение
Комментарий @Pspahn верен. array_unique()
удалит дубликаты. В примере вашего кода это можно использовать так:
<?php if ($_hasAssociatedProducts): ?>
<?php $qtys = array();
foreach ($_associatedProducts as $_items): ?>
<?php $_items->setData('tier_price',null); ?>
<?php $_tierPrices = $this->getTierPrices($_items); ?>
<?php foreach ($_tierPrices as $key => $value): ?>
<?php $qtys[] = $value['price_qty']; ?>
<?php endforeach; ?>
<?php endforeach;
array_unique($qtys); ?>
<?php for ($i=0;$i<count($qtys);$i++): ?>
<th><?php echo $qtys[$i]; ?></th>
<?php endfor; ?>
<?php endif; ?>
Это выведет 2 3 5
на основе вашего примера.
Вы просто хотели показать только такие количества?
Не связан с magento.stackexchange