2012-01-31 100 views
0

在我的config.xml中我有:Magento的不显示自定义块

<config> 
    <modules> 
     <Test_Quickorder> 
      <version>0.1.0</version> 
     </Test_Quickorder> 
    </modules> 
    <global> 
     <blocks> 
      <quickorder> 
       <rewrite> 
        <quickorder>Test_Quickorder_Block_Quickorder</quickorder> 
       </rewrite> 
      </quickorder> 
     </blocks> 
    </global> 
    <frontend> 
     <routers> 
      <quickorder> 
       <use>standard</use> 
       <args> 
        <module>Test_Quickorder</module> 
        <frontName>quickorder</frontName> 
       </args> 
      </quickorder> 
     </routers> 
     <layout> 
      <updates> 
       <quickorder> 
        <file>quickorder.xml</file> 
       </quickorder> 
      </updates> 
     </layout> 
    </frontend> 
</config> 

在应用程序/代码/社区/测试/ Quickorder /控制器/ IndexController.php我:

<?php 
class Test_Quickorder_IndexController extends Mage_Core_Controller_Front_Action 
{ 
    public function indexAction() 
    { 
     $this->loadLayout(array('default'); 
     $this->renderLayout(); 
    } 
} 

在应用程序/设计/前端/基/默认/布局/ quickorder.xml我:

<layout version="0.1.0"> 
    <default> 
     <reference name="top.links"> 
      <action method="addLink" translate="label title"> 
       <label>Quick Order</label> 
       <url>quickorder</url> 
       <title>Quick Order</title> 
       <prepare/> 
       <urlParams/> 
       <position>1</position> 
      </action> 
     </reference> 
    </default> 
    <quickorder_index_index> 
     <reference name="root"> 
      <action method="setTemplate"> 
       <template>page/1column.phtml</template> 
      </action> 
     </reference> 
     <reference name="content"> 
      <block type="quickorder/quickorder" name="quick" template="quickorder/quickorder.phtml"/> 
     </reference>   
    </quickorder_index_index> 
</layout> 

在应用程序/设计/前端/基/默认/模板/ quickorder/quickorder.phtml我:

<div class="content"> 
    <p>Hello</p> 
</div> 

而且在应用程序/代码/社区/测试/ Quickorder /座/ Quickorder我:

<?php 
class Test_Quickorder_Block_Quickorder extends Mage_Core_Block_Abstract 
{ 

} 

我在期待着 “你好”,以显示正确的页面中间。相反,我什么也得不到我知道布局的一些部分工作,因为当我浏览到quickorder我得到

<body class="quickorder-index-index"> 

可有人点我在正确的方向来我已经错在这里在哪里?

预先感谢任何帮助/提示/指针:-)

回答

3

我没有检查所有的代码,但是这

class Test_Quickorder_Block_Quickorder extends Mage_Core_Block_Abstract 
{ 

} 

应该是这个

class Test_Quickorder_Block_Quickorder extends Mage_Core_Block_Template 
{ 

} 

如果你想要一个块来渲染一个模板,它需要或从Mage_Core_Block_Template继承。

+0

感谢您的回应!我已经将您的教程与另一个教程结合起来,并且在您的推荐之后,它现在可以完美地运行 – james 2012-01-31 18:23:49