How to call Magento block in phtml template?
Solution 1
The reference is the block previously defined that you want your block to be inside, e.g.:
<reference name="footer">
<block type="cms/block" name="sample_links">
<action method="setBlockId"><block_id>sample_links</block_id></action>
</block>
</reference>
Then
<?php echo $this->getChildHtml('sample_links') ?>
Solution 2
$this->getLayout()->createBlock('cms/block')->setBlockId('my_static_block_name')->toHtml()
Solution 3
You can call a statick block like:
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('your_identifier')->toHtml() ?>
And call a block like:
<?php echo $this->getLayout()->createBlock('sidebar/left')->setTemplate('bannerslider/left.phtml')->tohtml(); ?>
Visit magevn.com to see more usecase to use block in magento.
Solution 4
If you don't want to bother with XML, same as swapnesh's answer, I'm just making it clearer for the php noobs out there (like me)
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('your_identifier')->toHtml() ?>
your_identifier is the code you decide to use when creating your block in CMS > Blocks > Create New Block, second line called "Identifier"
Comments
-
Ravichandran Jothi almost 4 years
i need to display some more links in footer. i created those links in magento admin as static blocks (id = sample_links ).
and then i added following code page.xml file
<reference name="foot_lnk"> <block type="cms/block" name="sample_block" before="-"> <action method="setBlockId"><block_id>sample_links</block_id></action> </block> </reference>
i called this one in footer.phtml as,
<?php echo $this->getChildHtml('foot_lnk') ?>
but it does not display the CMS static block content. what is the issue?.
-
Ravichandran Jothi almost 12 yearsyes i used above one it's working. but i need to display using XML like above.
-
Ravichandran Jothi almost 12 yearsits working thanks. already i have default footer links in <default> tag. i added block codes <block type="cms/block" name="sample_links"> <action method="setBlockId"><block_id>sample_links</block_id></action> </block> with in it.
-
Tobias Hagenbeek over 8 yearsmore complete answer, thanks for the added info, makes a google search much more complete :)
-
Lysarion almost 8 yearsWell, you should have edited his answer to add precisions, then, instead of posting an almost identical one.