0

我为一堆 magento 产品设置了分级定价,并想更改它们的显示方式。目前它只是说“以 x 数量购买 1”,这并没有真正正确地解释范围。无论如何,它是否可以说“以 x 数量购买 1-9”。例如,我希望每个产品有大约 5 层。

Buy 10-19 for £3.32 each
Buy 20-49 for £2.99 each
Buy 50-99 for £2.39 each
Buy 100-199 for £2.39 each
Buy 200-299 for £2.39 each

请注意,这些数字会因产品而异。

我找到了一个已回答的问题,它解释了如何出色地为第一层执行此操作,但我需要它在我的所有层上工作。也许在一个循环内?

Magento 分组产品标签问题

<?php
 $_format = 'Buy %1$s for %2$s each';

 if($index === count($_tierPrices) - 1)
 {
      $_format = 'Buy %1$s+ for %2$s each';
 }
 else
 {
      $_next = $_tierPrices[$index + 1];
      $_qty = $_next['price_qty'] - 1;
      if($_qty > 0) $_format = 'Buy %1$s-' . $_qty . ' for %2$s each';
 }

 echo $this->__($_format, $_price['price_qty'], $_price['formated_price']);
?>

您将如何循环此代码以使其影响所有层。

谢谢

4

1 回答 1

1

简单的解决方法

<?php
 $_format = 'Buy %1$s for %2$s each';

 if($index === count($_tierPrices) - 1)
 {
      $_format = 'Buy %1$s+ for %2$s each';
 }
 else
 {
      $i  = $i + 1;
      $_next = $_tierPrices[$index + $i];
      $_qty = $_next['price_qty'] -1;

      if($_qty > 0) $_format = 'Buy %1$s-' . $_qty . ' for %2$s each';
 }

 echo $this->__($_format, $_price['price_qty'], $_price['formated_price']);
?> 
于 2012-08-27T19:20:11.413 回答