2012-01-25 13 views
1

私はmagento.Iでブロックモジュールとphtmlファイルを作成しました。ローカルホスト/ dev/index.php/testimonials/index/indexブロックを表示していませんか?Magentoモジュールブロックが動作しない

出力は私が

<block type="testimonials/front" name="testimonialindex" template="front.phtml" /> 

このhttp://imageshack.us/photo/my-images/525/screenshotvs.png/

UPDATEこのコードは、そのここ<testimonials_index_index>

にされて動作していないhandle.Butデフォルトで動作取得.Instead "ロードブロック" である必要がありますコード

<?xml version="1.0"?> 
<config> 
    <modules> 
     <Training_Testimonials> 
      <version>1.0.0</version> 
     </Training_Testimonials> 
    </modules> 

    <frontend> 
     <routers> 
      <training_testimonials> 
       <use>standard</use> 
       <args> 
        <module>Training_Testimonials</module> 
        <frontName>testimonials</frontName> 
       </args> 
      </training_testimonials> 
     </routers> 

     <layout> 
      <testimonials_layout> 

       <file>testimonials.xml</file> 
      </testimonials_layout> 
     </layout> 

    </frontend> 

    <global> 
     <blocks> 
      <testimonials> 
       <class>Training_Testimonials_Block</class> 
      </testimonials> 
     </blocks> 
     <helpers> 
      <testimonials> 
       <class>Training_Testimonials_Helper</class> 
      </testimonials> 
     </helpers> 
     <models> 
     <testimonials> <!-- group name must be uniqu --> 
      <class>Training_Testimonials_Model</class> 
      <resourceModel>testimonials_mysql4</resourceModel> 
     </testimonials> 
     <testimonials_mysql4> 
      <class>Training_Testimonials_Model_Mysql4</class> 
      <entities> 
       <manager> <!--Model name --> 
        <table>testimonials</table> 
       </manager> 
      </entities> 
     </testimonials_mysql4> 
     </models> 
     <resources> 
     <testimonials_read>   <!-- group name_ --> 
      <connection> 
       <use>core_read></use> 
     </connection> 
     </testimonials_read> 
     <testimonials_write>   <!-- group name_ --> 
      <connection> 
       <use>core_write></use> 
      </connection> 
     </testimonials_write> 
     </resources> 
    </global> 

</config> 

ブロッククラス

// app/code/local/Training/Testimonials/Block/Front.php 
    class Training_Testimonials_Block_Front extends Mage_Core_Block_Template 
    { 
     public function layout() 
     { 
      echo "Block loaded"; 
     } 
    } 

レイアウトファイルは

<!-- app/design/frontend/default/wireframe/layout/testimonials.xml --> 
    <?xml version="1.0"?> 
    <layout version="0.1.0"> 
     <testimonials_index_index> 
      <reference name="content"> 
       <block type="testimonials/front" name="testimonialindex" template="front.phtml" /> 
      </reference> 
     </testimonials_index_index> 
    </layout> 
+0

リンクが壊れている...私はlocalhost –

+0

は何をページに表示するために期待していますか? front.phtmlファイルは$ this-> layout()を明示的に呼び出しますか? – blakcaps

+0

ザッツ –

答えて

2

正しいコードは、あなたのバージョニングが同様に間違っている

<layout> 
     <updates> 
      <testimonials> 
       <file>testimonials.xml</file> 
      </testimonials> 
     </updates> 
</layout> 
0

あなたはIndexActionとコントローラIndexControllerを定義し、loadLayoutとrenderLayoutを行う必要があります。

+0

私はconfig.xml.Indexコントローラの一部だけを掲載しています。問題の設定全体を投稿します。 – blakcaps

+0

ブロック内で追加してみてください。>>> public function _prepareLayout() { return parent :: _ prepareLayout(); } – Nasaralla

0

です。各xmlファイルで、モジュールのバージョンが同じであることを確認してください。

<modules> 
    <Training_Testimonials> 
     <version>1.0.0</version> 
    </Training_Testimonials> 
</modules> 

<layout version="0.1.0"> THIS SHOULD BE 1.0.0 OR THE VERSION ABOVE SHOULD BE 0.1.0 
    <testimonials_index_index> 
     <reference name="content"> 
      <block type="testimonials/front" name="testimonialindex" template="front.phtml" /> 
     </reference> 
    </testimonials_index_index> 
</layout> 
関連する問題