Magento 在辅助对象中使用模板/块

Magento 在辅助对象中使用模板/块,magento,templates,block,helper,Magento,Templates,Block,Helper,我有一个使用这种方法的助手来获取客户购物车中的物品 public function getCartData() { //Get cart DATA $quote = Mage::getSingleton('checkout/session')->getQuote(); $cartItems = $quote->getAllVisibleItems(); $items = ''; foreach ($cartItems as $item) {

我有一个使用这种方法的助手来获取客户购物车中的物品

public function getCartData()
{
    //Get cart DATA
    $quote = Mage::getSingleton('checkout/session')->getQuote();
    $cartItems = $quote->getAllVisibleItems();
    $items = '';
    foreach ($cartItems as $item) {
        $items .= $item->getId() . " ";
    }
    return $items;
}
但我要做的是更换这条线

$items .= $item->getId() . " ";
使用
template/checkout/cart/sidebar/default.phtml


我该怎么办?该方法正在ajax控制器中调用。我想在不刷新页面的情况下更新用户的购物车,但它需要格式化。

那么您想为循环中的每个
$item
呈现模板中的内容吗

如果查看
app/design/frontend/base/default/layout/checkout.xml
,您将看到定义的原始边栏块:

<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>
请注意,在创建块之后,我们是如何设置项的。这一点很重要,因为如果检查模板,您将在顶部看到它调用的:

<?php $_item = $this->getItem() ?>

试试看它是否有用

<?php $_item = $this->getItem() ?>