自定义Magento页标题与Meta描述

在Magento中,CMS页、产品页、分类页均可以设置Meta keywords与Meta Description。

但在其它页面上如何设置呢?

例如今天SEO团队发来文档,要求修改Checkout页、MyAccount页、Login页、Contact页等等的页标题与Meta描述部分。

于是第一反应就是用XML来配置.

另:在System-Configration-Design-Html-Header中只能设置默认的Meta描述。不符合本需求。

例如Contact页,那就找到模板下布局文件,如contact.xml,在部分添加以下代码

Contact Us title Conact Keywords Contact us Description

值得注意的是有些页面的Title是写死的,设置了也没用。

如Login页面

//app/code/core/Mage/Customer/Block/Form/Login.php protected function _prepareLayout() { $this->getLayout()->getBlock('head')->setTitle(Mage::helper('customer')->__('Customer Login')); return parent::_prepareLayout(); }

如果想要自己设置的,把那条$this->getLayout()语句注释掉,这时customer.xml中的setTitle就生效了。

Checkout页面与之类似,app\code\core\Mage\Checkout\controllers\CartController.php中


public function indexAction()
{
......
.......
$this
            ->loadLayout()
            ->_initLayoutMessages('checkout/session')
            ->_initLayoutMessages('catalog/session');
           // 把这句注释,这时checkout.xml中的setTitle就生效了->getLayout()->getBlock('head')->setTitle($this->__('Shopping Cart'))
}

真搞不懂为什么不能一致

你可能感兴趣的:(Magento)