Developers new to magento often mix up their mvc concepts with magento’s mvc and as result get confused.

Lets try to understand how it works in magento.

  1. There is main entry point “index.php" which will load whole application and start it.
  2. Base on the requested URL appropriate controller will be called.
  3. Controller defines the pages and load the layout files for those pages.
  4. Layout files tells the controllers which block files to use.
  5. Block files collect the data from models and helpers files and pass it to templates files.
  6. Templates files receive data and render html.