0

とにかく、カタログページを編集して、グループ化された製品ページを開くための単純な製品 (グループ化された製品の一部) のリンクを作成することはできますか? どんな助けでも大歓迎です。

より明確にするために。グループ「abc」には、a、b、c の 3 つの製品があります。したがって、製品リストで顧客が製品「a」をクリックすると、グループ (abc) ページに転送 (または開き) されます。

4

1 に答える 1

1

警告から始めましょう: これは面倒ですが、動作します!

これは、Magento 1.4.1 で、ショッピング カート内のグループ化された製品の単純な製品部分のために開発されました。これで、単純な商品をクリックすると、親グループ化された商品に移動します。

template/checkout/cart/item/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>
于 2010-10-04T23:08:17.563 に答える