Template System

A complete page is rendered as a nested set of template files (technically, a nested set of Blocks). There are no 
explicit "widgets" in the system, that means, you won't find a specific "Form" class nor "Button" class or object. The 
lowly Block classes straddle the line between widgets and templates. The nested set of templates and blocks is 
controlled by ... you guessed it, an XML file, specifically a set of XML files. This is quite powerful for developers and 
plug-in contributors, but it seems that it is overly complicated for most designers (even those familiar with PHP).

Layout Files

The layout files control the structure of any final page rendering. They are located in the layout folder under your 
design theme.



	Block system
		app/code/core/Mage/Catalog/Block/Product/View.php (runs include() on ...

	Layout files
		layout/catalog.xml (defines the block)
		layout/page.xml (default settings)


		$this->*() refers to the Block that includes this file
			<?php echo $this->getMessagesBlock()->getGroupedHtml() ?>

The most important XML file is page.xml.