如何从控制器加载magento视图(.phtml)文件

时间:2011-07-27 14:53:40

标签: php magento cart shopping

我试图加载购物车侧边栏的渲染版本,我打算通过ajax加载...我一直在搜索很多,似乎最好的方法是创建一个自定义模块,将处理我的所有ajax请求。我已经创建了一个自定义模块,但是当我显示sidebar.phtml它没有正确呈现时,一切似乎都在工作。它显示为好像购物车中没有任何东西。 (我假设它只是试图在不使用任何会话信息的情况下读取文件)。我搜索了一堆,但似乎与我正在尝试做的事情无关。

这是我在自定义控制器中使用的代码,用于加载phtml文件,该文件本质上是checkout / cart / sidebar.phtml文件的副本和过去。

$layout = $this->loadLayout();


$block = $this->getLayout()->createBlock(
'Mage_Core_Block_Template',
'PPWD_Custom',
array('template' => 'custom/custom.phtml')
);
echo $block->toHtml(); 

由于

1 个答案:

答案 0 :(得分:3)

问题在于块类型不正确。您应该使用Mage_Core_Block_Template而不是Mage_Checkout_Block_Cart_Sidebar。像这样:

$this->getLayout()->createBlock(
    'checkout/cart_sidebar',
    'PPWD_Custom',
    array('template' => 'custom/custom.phtml')
);