Magento:在类别页面上,如何以可配置的方式显示所有颜色选项的产品

时间:2012-10-18 10:26:45

标签: magento

我有一个可配置的产品,有两个可配置的属性大小和颜色,我想在类别页面上显示可配置的每种颜色的一个产品。当提供不同尺寸时,需要显示这些颜色。

当客户打开页面时,他们应该看到所有产品都可用的所有颜色,然后如果按尺寸过滤,他们应该看到所有产品的所有颜色。

此问题存在两个问题。 1.显示适当的产品和颜色,2。设置分层导航,使其显示所有正确的选项。

我尝试过为每种颜色显示简单的产品,并将它们链接到可配置的父级,但分层导航却完全错误。我还尝试在后端显示可配置产品,以便将其添加到产品集合中并在过滤器中使用,然后将其隐藏在类别页面上,这种工作,但分层导航也计算所有简单产品。另一个问题是,如果我尝试使用简单的产品并选择每种颜色中的一种,那么它们也具有特定的尺寸,这样如果用户更改过滤器中的尺寸,这些将不会显示。

有没有人知道这样做的方法?

1 个答案:

答案 0 :(得分:2)

在list.phtml(或您要创建的任何新模板)中(编辑:或更好:在一个区块中)试试这个:

$colors = array();
if ($_product->isConfigurable()) {
    $allProducts = $_product->getTypeInstance(true)->getUsedProducts(null, $_product);
    foreach ($allProducts as $subproduct) {
        if ($subproduct->isSaleable()) {
            $colors[$subproduct->getColor()] = $subproduct->getAttributeText('Color');
        }
    }
}

并迭代$ colors以构建自定义HTML颜色列表