Давайте начнем с предупреждения: это грязно, но это работает!
Это было разработано под Magento 1.4.1 для простых продуктов в составе сгруппированного продукта в корзине покупок. При этом, когда вы нажимаете простой продукт, он переходит к родительскому сгруппированному продукту.
В шаблон/Checkout/корзина/пункт/default.phtml заменить:
<?php $_item = $this->getItem() ?>
с:
<?php
$_item = $this->getItem();
$read = Mage::getSingleton('core/resource')->getConnection('core_read');
$query = 'SELECT parent_id FROM ' . Mage::getSingleton('core/resource')->getTableName('catalog_product_relation') . ' WHERE child_id = ' . $_item->getProductId();
$parent_id = $read->fetchOne($query);
$_parentItem = Mage::getModel('catalog/product')->load($parent_id);
if ($_item->getProductType() == 'simple' && $_parentItem->getTypeId() == 'grouped') {
$_itemUrl = $_parentItem->getProductUrl();
}
else {
$_itemUrl = $this->getProductUrl();
}
?>
Затем несколько строк позже, заменить:
<h2 class="product-name">
<?php if ($this->hasProductUrl()):?>
<a href="<?php echo $this->getProductUrl() ?>"><?php echo $this->htmlEscape($this->getProductName()) ?></a>
<?php else: ?>
<?php echo $this->htmlEscape($this->getProductName()) ?>
<?php endif; ?>
</h2>
с:
<h2 class="product-name">
<?php if ($this->hasProductUrl()):?>
<a href="<?php echo $_itemUrl ?>"><?php echo $this->htmlEscape($this->getProductName()) ?></a>
<?php else: ?>
<?php echo $this->htmlEscape($this->getProductName()) ?>
<?php endif; ?>
</h2>