özet
- Arasındaki fark nedir
getChildHtml
vegetBlockHtml
? - Şablonda cms / block başlığını nasıl alabilirim?
Ben aslında kendi altbilgi ile Altbilgiyi yerini ve kendi ayarlamış <?= $this->getChildHtml('...') ?>
kullandığım kadar bu işi vermedi: <?= $this->getBlockHtml('...') ?>
.
Düzen XML'si:
<layout>
<default>
<block type="core/template" name="custom_footer" as="footer" template="page/html/footer.phtml">
<block type="cms/block" name="child_1">
<action method="setBlockId"><block_id>footer_child_1</block_id></action>
</block>
</block>
</layout>
</default>
Şablon (çalışmıyor):
<footer>
<div class="row">
<div class="col-sp4"><?= $this->getChildHtml('child_1') ?></div>
</div>
</footer>
Şablon (İşler):
<footer>
<div class="row">
<div class="col-sp4"><?= $this->getBlockHtml('child_1') ?></div>
</div>
</footer>
Çözüm:
Her şeyden önce benim local.xml
tarafından altbilgiyi geçersiz kılmak zorunda kaldı :
<default>
<block type="core/template" template="page/html/custom_footer.phtml" name ="custom_footer" as "footer" />
</default>
Çocuklarımı eklemek zorunda kaldım ( getChildHtml()
çalışmak için):
<reference name="footer">
<block type="cms/block" name="child_1">
<action method="setBlockId"><block_id>footer_child_1</block_id></action>
</block>
</reference>
<block type="cms/block" name="child_1">
bir çocuğu olduğunu düşünmekte haklıfooter
mıyım? Bu durumda `` getChildHtml ('child_1') neden çalışmıyor?