Designing various templates blocks
A Block is basically a data resource for Views. It uses the sites Models, grabs the data, makes any necessary adjustments, and then makes that data available to a View. For instance, when you override / create a Block that calls a product collection, that product collection is pulling some products’ data from a Model. The Block is where you create such a product collection and implement the product collection’s methods, such as adding filters or ordering the products in a certain way. That product collection is then made available to your View so you can display the products on a page.
The view engine is responsible for parsing the template and rendering the shape data into a web page. The default view engine for our Web application is the zend view engine, which is processed by Zend Partial view helper.
The Partial view helper is used to render a specified template within its own variable scope. The primary use is for reusable template fragments with which you do not need to worry about variable name clashes. Additionally, they allow you to specify partial view scripts from specific modules.
Block Files : All block file are located at /application/layouts/scripts/<$TemplateP>/blocks/
Naming Convention : By default all block files are named as ModuleName_PageName_Position_BlockName.phtml
An Example : The block name gallery_home_content_videoplayer.phtml interprets as follows:
gallery = ModuleName
By default all blocks are located at /<$ServerPath> /application/layouts/scripts/<$TemplatePath>/blocks/ . You can create custom block using Zend Partial view helper. Click Here to know more about Zend Partial view helper
Sample Block Example :