2014-07-15 39 views
0

我是Magento的新手。Magento自定義靜態塊不存在模板

在下部的那個local.xml這些塊被定義:

<reference name="header"> 
    <block type="cms/block" name="flatshop_header_support"> 
     <action method="setBlockId"><block_id>flatshop_header_support</block_id></action> 
    </block> 
    <block type="cms/block" name="flatshop_header_2blocks"> 
     <action method="setBlockId"><block_id>flatshop_header_2blocks</block_id></action> 
    </block> 
header.phml

兩者都稱爲像:

<?php echo $this->getChildHtml('flatshop_header_support') ?> 
<?php echo $this->getChildHtml('flatshop_header_2blocks') ?> 

開/ admin/cms_block/static block with 「flatshop_header_support」標識的定義和充滿了像「flatshop_header_2blocks」(這是運作良好)的含量,但回報是string(0) ""

我如何能在標題部分打印flatshop_header_support塊?

的Magento v1.9.1的模板:Flathop

回答

2

我可以建議你三種不同的方式在這裏解決您的問題。

我會強烈建議我的電話號碼(3),這是最好的辦法,並不會推薦號(2)。

1)只使用下面的代碼在你的header.phtml文件,而不是您用來調用靜態塊您的PHTML文件

<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('flatshop_header_support')->toHtml(); ?> 
    <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('flatshop_header_2blocks')->toHtml(); ?> 

2)替代local.xml中什麼,使用來自local.xml中你的 「參考塊」 的代碼,並將其粘貼page.xml

<block type="page/html_header" name="header" as="header">---</block> 

它應該工作以及

3)您所使用的腳本有沒有問題,我可以說的唯一的事情是,你local.xml中是不正確設置它爲什麼不執行它,尋找如XML標籤簡單的細節或我使用了local.xml中

<?xml version="1.0" encoding="UTF-8"?> 
    <layout version="0.1.0"> 
     <default> 
      <reference name="header"> 
      <block type="cms/block" name="flatshop_header_support"> 
       <action method="setBlockId"><block_id>flatshop_header_support</block_id></action> 
      </block> 
      <block type="cms/block" name="flatshop_header_2blocks"> 
       <action method="setBlockId"><block_id>flatshop_header_2blocks</block_id></action> 
      </block> 
      </reference> 
     </default> 
    </layout> 

希望我的回答可以解決您的問題的代碼進行比較。

+0

1),2)版本運行良好。在3)的情況下,只有'encoding =「UTF-8」'丟失。謝謝! – eapo

+0

偉大的幫助:) – Pradino