Understanding Magento Block and Block Type

Anup_Tripathi picture Anup_Tripathi · Jul 9, 2011 · Viewed 85.4k times · Source

I just want to understand the meaning of

 <block type="page/html" name="root" output="toHtml" template="example/view.phtml">

I got many references from Google and understood many things about it but I am still unable to understand the formation of type="page/html" how to form a type for my custom module.

Please explain

type="A/B"

Let me know where this A and B come from?

Answer

Kamesh Jungi picture Kamesh Jungi · Aug 2, 2012

For understanding more about magento block types following are some built-in block types which are widely used in layout.

  1. core/template: This block renders a template defined by its template attribute. The majority of blocks defined in the layout are of type or subtype of core/template.
  2. page/html: This is a subtype of core/template and defines the root block. All other blocks are child blocks of this block.
  3. page/html_head: Defines the HTML head section of the page which contains elements for including JavaScript, CSS etc.
  4. page/html_header: Defines the header part of the page which contains the site logo, top links, etc.
  5. page/template_links: This block is used to create a list of links. Links visible in the footer and header area use this block type.
  6. core/text_list: Some blocks like contentleftright etc. are of type core/text_list. When these blocks are rendered, all their child blocks are rendered automatically without the need to call thegetChildHtml() method.
  7. page/html_wrapper: This block is used to create a wrapper block which renders its child blocks inside an HTML tag set by the action setHtmlTagName. The default tag is <div> if no element is set.
  8. page/html_breadcrumbs: This block defines breadcrumbs on the page.
  9. page/html_footer: Defines footer area of page which contains footer links, copyright message etc.
  10. core/messages: This block renders error/success/notice messages.
  11. page/switch: This block can be used for the language or store switcher.

This is a list of only commonly used block types. There are many other block types which are used in advanced theme implementations.