首先你应该为你的控制器定义布局句柄:
像这样:
<modulename_name_index>
</modulename_name_index>
您应该定义要显示的位置:内容、左、右、另一个块:
<modulename_name_index>
<reference name="content">
</reference name="content">
</modulename_name_index>
然后你定义要显示的块:
<modulename_name_index>
<reference name="content">
<block type="module/blockname" name="blockname" template="templatedir/templatefile.phtml"/>
</reference name="content">
</modulename_name_index>
module/blockname 是你的块的名称。在示例文件中应该是这样的:
公司/模块名称/块/块名称.php。
您的 config.xml 也应该正确定义,以便 magento 理解使用“模块”的东西它应该特别加载你的类。
像这样的:
<global>
...
<blocks>
<module>
<class>Company_Module_Block</class>
</module>
</blocks>
...
</global>
更新 1
如果你想简单地渲染一些内容,那么你可以使用 Magento 的默认块类:
core/template or Mage/Core/Block/Template
这就是你的 xml 文件的样子:
<modulename_name_index>
<reference name="content">
<block type="core/template" name="blockname" template="templatedir/templatefile.phtml"/>
</reference name="content">
</modulename_name_index>
但是,如果您的 .phtml 文件中有类似的内容:
$this->getSomethingSpecificValueForCurrentDisplay()
这行不通。另一方面,如果您的 phtml 中有非常简单的 php,如下所示,则不需要自定义块。
<?php for(i = 0; i++; i< 10){ ?>
<?php echo "Hello mates" ?>
<?php } ?>