1

我正在尝试在显示产品的每个地方显示商品的品牌,包括默认情况下通常显示在右侧的结帐购物车块。

我尝试了几种方法,但其中一种似乎奏效了。

购物车/侧边栏/default.phtml

$_item  = $this->getItem();
$_product   = $_item->getProduct()->load();
$attributes = $_product->getAttributes();

这会导致内存错误,所以我尝试使用获取自定义属性并将属性名称传递给它,但这也不起作用。获取自定义属性只返回 NULL

默认/布局/checkout.xml

 <default>

    <!-- Mage_Checkout -->
    <reference name="top.links">
        <block type="checkout/links" name="checkout_cart_link">
            <action method="addCartLink"></action>
            <action method="addCheckoutLink"></action>
        </block>
    </reference>
    <reference name="right">
        <block type="checkout/cart_sidebar" name="cart_sidebar" template="checkout/cart/sidebar.phtml" before="-">
            <action method="addItemRender"><type>simple</type><block>checkout/cart_item_renderer</block><template>checkout/cart/sidebar/default.phtml</template></action>
            <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/cart/sidebar/default.phtml</template></action>
            <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/cart/sidebar/default.phtml</template></action>
            <block type="core/text_list" name="cart_sidebar.extra_actions" as="extra_actions" translate="label" module="checkout">
                <label>Shopping Cart Sidebar Extra Actions</label>
                <action method="addAttribute"><attribute>brand</attribute></action>
            </block>
        </block>
    </reference>
</default>

我编辑了这个,我认为包括我的自定义品牌属性,如果我理解正确,应该可以在侧边栏购物车中访问它......

从这一点来看,我无法说出我现在缺少什么。

4

1 回答 1

4

请试试这个。删除您自定义的所有内容。只需添加以下代码。你会看到魔法

    <?php $_product= Mage::getSingleton('catalog/product')->load($_item->getProductId()) ?>

    <?php echo $_product->getResource()->getAttribute('manufacturer')->getFrontend()->getValue($_product); 

上面的代码正在运行。在 1.7.0.2 中测试

于 2013-02-20T13:53:06.177 回答