Small part of Page.xml:
<layout version="0.1.0">
....
<default translate="label" module="page">
<label>All Pages</label>
<block type="page/html" name="root" output="toHtml" template="page/2columns-left.phtml">
<block type="page/html_header" name="header" as="header" /> <!-- work -->
<block type="page/html_wrapper" name="u.Top.Menu" as="u_Top_Menu" translate="label"> <!-- doesn't work -->
<label>top menu</label>
<action method="setElementTagName"><value>div</value></action>
<action method="setElementClass"><value>sub-menu</value></action>
</block>
...
</block>
....
And in the 2columns-left.phtml output it:
<?php echo $this->getChildHtml('u_Top_Menu'); ?>
But it always retuns empty value. I’m confused here a bit. What I’m doing wrong here?
This is what happens when you forget to add the children block to the html wrapper block. Look at this block class source code:
…