As we know, Magento is very powerful template system. The same thing we can say about the logic part. Magento generally consists of about 50 modules. There are module to checkout, customer management, CMS sites, etc. module consists of a few parts – in addition to design parts of it are: components, blocks, models and helpers. Component contains all the actions that happen when the module is used. If we http://www.my-eshop.tld/index.php/a/b/c url
It means that module must perform an action in C Controller b.
The blocks are responsible for the preparation of data for templates. Each template can be used, it must have to block. Sometimes blocks are simple, they can sometimes complicated. At least in some situations it is useful to move data from the controller, the block, we do not have to charge it several times in a query.
For that we use the opportunity that gives us Magento – The storage of data.
In our controller we store data in variable called $ data, we can save on it, as this register:
Mage:: register ('MyData', $ dat);
Then, in block file, you can use all that data again.
$ Data = Mage:: registry ('MyData');
It is a little feature that can be very useful sometimes.
(Based on baobaz Turtorial)