Мне нужно отобразить продукты, которые имеют групповую цену.
То, что я до сих пор, это.
Сначала я загружаю коллекцию товаров.
<?php
$_productCollection=$this->getLoadedProductCollection();
$_collectionSize = $_productCollection->count();
?>
Затем я просто проверяю 2 вещи. Если пользователь вошел в систему, и группа клиентов.
<?php if(Mage::getSingleton('customer/session')->isLoggedIn()){
// Get group Id
$groupId = Mage::getSingleton('customer/session')->getCustomerGroupId();
//Get customer Group name
$group = Mage::getModel('customer/group')->load($groupId);
$var_customer_group = $group->getCode();
$product = Mage::getModel('catalog/product')->load($productId);
}?>
<?php if ($var_customer_group == "Wholesale")
{ ?>
И я строю список с моими продуктами.
<ul>
<?php foreach ($_productCollection as $_product): ?>
<li>
</li>
<?php endforeach ?>
</ul>
<?php } ?>
Как я могу проверить в $_productCollection
какие продукты имеют групповую цену.
Любая помощь приветствуется!
Мне удалось получить то, что я просил. Это довольно просто, если вы начинаете мыслить нестандартно.
Я предоставлю код, чтобы помочь другим с той же проблемой.
Во-первых, добавьте коллекцию продуктов.
<?php
$_productCollection=$this->getLoadedProductCollection();
$_collectionSize = $_productCollection->count();
?>
Затем,
<?php foreach ($_productCollection as $_product): ?>
<?php $product_id = $_product->getId();
$arrayofproductsID = Mage::getModel('catalog/product')->load($product_id);
$groupPrices = $arrayofproductsID->getData('group_price');
?>
<?php if(($groupPrices[0][price])) { ?> <-- //Here happens the check if there is a group price.
<li> ... </li>
<?php } ?>
<?php endforeach ?>
Других решений пока нет …