Layouts are explained in template overview section. Layouts are loaded with layout.xml file that can be loaded in the installation script (install.php) with simple function call below.
See an example of layout.xml
Children Blocks are standalone elements that are linked to some parent block and the layout for specific page/template combination.
Single block can be linked to multiple layouts or templates.
Each block is identified by block_txt_id. Duplicate blocks with same "block_txt_id" will not be allowed
To make sure that your block does not have conflicting block_txt_id with any other block, create a unique 'block_txt_id'.
In event, you load new block via XML layout, and same "block_txt_id" block already available, existing block ID will be used instead of your block and linked to your layout.
It is recommended to use unique "block_txt_id" if you need to make sure you use your specific block.
To lean more about AbanteCart architecture, see this page
Reusing or extending block
If you need to reuse (include) or extend functionality of existing block from "default" template, you can do it.
There are 3 Options for reusing existing blocks provided by default template.
1. You can reuse existing common block. If you need custom template (.tpl) file for this block, you can provide an override template in same virtual location in your extension.
2. You can reuse existing common block and provide override for controller in same virtual location of extension.
3. You can reuse existing common block and hook into controller of the block to extend functionality. hook
hook will add new variable to block's template.
Then create block tpl for example blocks/currency.tpl and get variable