Magento – Default meta title for product and category page

category-listingcmsdefault valuesmagento-1.9meta-title

I want to set default meta title for product page,category page and for cms page. If I'm not setttin title in admin panel I want to set my default title. But I don't know how to make this. I try override getMetaTitle but this does not work for all titles, if I set title in panel admin too.

Do you have any hints?

Best Answer

Event

<controller_action_layout_generate_blocks_after>
   <observers>
       <change_category_page_title>
             <class><Module>/observer</class>
             <method>setMetaTitle</method>
       </change_category_page_title>
   </observers>
</controller_action_layout_generate_blocks_after>

Observer

public function setMetaTitle(Varien_Event_Observer $observer)
    {
        $head = $observer->getLayout()->getBlock('head');
        if($head->getTitle()=='')
        {
            if(Mage::registry('current_category'))
            {
                $head->setTitle('< default title for category >');
            }
            else if(Mage::registry('current_product')) 
            {
                $head->setTitle('< default title for product >');
            }
            else if($this->getRequest()->getModuleName()=='cms')
            {
                $head->setTitle('< default title for cms >');
            }
        }
    }
Related Topic