2013-06-19 40 views
0

我修改了local.xml中的<cms_index_index>標記,理想情況下會在主頁加載時從數據庫中提取靜態塊。但是,沒有靜態塊被拉動。我創建了一個標識爲mobile_home的靜態塊,並且已啓用。我也嘗試了一個現有的,工作的靜態塊無濟於事。怎麼了?什麼可能會起作用?未從佈局文件中調用Magento靜態塊

<cms_index_index> 
     <block type="cms/block" name="cms_page"><action method="setBlockId"><block_id>mobile_home</block_id></action></block> 
</cms_index_index> 

編輯:添加的引用之後,它仍然不呈現:

<cms_index_index> 
     <reference name="head"> 
      <block type="cms/block" name="cms_page"><action method="setBlockId"><block_id>mobile_home</block_id></action></block> 
     </reference> 
    </cms_index_index> 

回答

2

塊被實例化(假設此佈局XML正在合併的),但它需要被添加到渲染流程。快速測試是把你的塊,並通過output屬性使其輸出塊:

<cms_index_index> 
    <block type="cms/block" name="cms_page" output="toHtml"> 
     <action method="setBlockId"> 
      <block_id>mobile_home</block_id> 
     </action> 
    </block> 
</cms_index_index> 

然後,您可以將其添加到模板少塊如content

<cms_index_index> 
    <!-- or use reference syntax, up to you --> 
    <block type="cms/block" name="cms_page" parent="content"> 
     <action method="setBlockId"> 
      <block_id>mobile_home</block_id> 
     </action> 
    </block> 
</cms_index_index> 

你可以也進入CMS頁面的內容主體並使用block指令添加靜態塊(或通過小部件界面插入):

{{block type="cms/block" block_id="mobile_home"}} 

{{widget type="cms/widget_block" template="cms/widget/static_block/default.phtml" block_id="5"}} 
+0

感謝您的回覆。不幸的是,靜態塊仍然沒有渲染!請參閱上面的編輯 – valen

+0

頭部塊是html頭 - 它不可見!試試'content'塊。 – benmarks