0

我从这里http://www.magentocommerce.com/knowledge-base/entry/magento-for-dev-part-3-magento-controller-dispatch遵循官方教程, 当我尝试追加时遇到了一个问题一个街区到另一个街区。我使用以下代码(教程中使用了非常相似的代码 - 2)但它不起作用。返回空$block->toHtml()字符串,但$block包含一个大数组。

class Custom_HelloWorld_IndexController extends Mage_Core_Controller_Front_Action {

    public function indexAction() {
        $this->loadLayout();
        $block = $this->getLayout()->createBlock('newsletter/subscribe');
        $this->getLayout()->getBlock('content')->append($block);
        $this->renderLayout();
    }

}

如果我使用 XML 文件来做同样的事情,一切都会好起来的。

4

1 回答 1

1

newsletter/subscribe块扩展了 Mage_Core_Block_Template,但未在其构造函数中设置默认 *.phtml 文件。请参阅http://svn.magentocommerce.com/source/branches/1.7/app/code/core/Mage/Newsletter/Block/Subscribe.php

所以你需要$block->setTemplate("newsletter/subscribe.phtml");在渲染布局之前做一些事情。

于 2013-10-15T02:43:40.027 回答