我试图加载购物车侧边栏的渲染版本,我打算通过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();
由于
答案 0 :(得分:3)
问题在于块类型不正确。您应该使用Mage_Core_Block_Template
而不是Mage_Checkout_Block_Cart_Sidebar
。像这样:
$this->getLayout()->createBlock(
'checkout/cart_sidebar',
'PPWD_Custom',
array('template' => 'custom/custom.phtml')
);