In my magento store I have the recently viewed products block and newsletter signup block inside my footer as shown with the below code all working ok:
footer.phtml
<?php echo $this->getLayout()->createBlock('reports/product_viewed')->setTemplate('reports/product_viewed.phtml')->toHtml(); ?>
<?php echo $this->getChildHtml('footer.newsletter') ?>
On one of my CMS pages i want to hide these 2 blocks. In the design admin tab for my CMS page i have already hidden the breadcrumbs with the below in the Custom Layout Update XML
section, again working fine:
<reference name="root">
<remove name="breadcrumbs" />
</reference>
I cannot seem to come up with the correct code to remove these blocks. I have tried several lines of code for each block:
<reference name="footer">
<remove name="reports.product.viewed" />
</reference>
<reference name="root">
<remove name="footer.reports.product.viewed" />
</reference>
<reference name="footer">
<action method="unsetChild"><alias>reports.product.viewed</alias></action>
</reference>
Try using below code in your layout XML file
<cms_page>
<reference name="footer">
<remove name="footer-product-viewed" />
<remove name="your_footer_newsletter_block_name" />
</reference>
</cms_page>
Code in your footer.phtml
<?php echo $this->getLayout()->createBlock('reports/product_viewed', 'footer-product-viewed')->setTemplate('reports/product_viewed.phtml')->toHtml(); ?>
<?php echo $this->getChildHtml('footer.newsletter') ?>
If your footer newsletter block is still not removed try passing false
parameter, which will not allowed the block to render from cache.
<?php echo $this->getChildHtml('footer.newsletter', false) ?>
Hope it helps.