Перезапись заголовка страницы с помощью Magento - PullRequest
3 голосов
/ 24 февраля 2012

Я искал, как это сделать, но ничего не работает.

У меня есть файл .phtml, и я хочу использовать его для перезаписи текущего заголовка (который находится между тегами <title></title>).).

Я нашел где-то, что $this->getLayout()->getBlock('head')->setTitle("New Title"); должен был это сделать, но это не так.Однако $this->getLayout()->getBlock('head')->getTitle(); правильно возвращает текущий заголовок правильно.

Любая помощь будет отличной

Ответы [ 4 ]

4 голосов
/ 24 февраля 2012

Не думаю, что вы можете сделать это в .phtml .Я хотел бы использовать файл local.xml и следовать этому руководству .

. Это позволяет вам установить заголовок для разных страниц, например:

<reference name="head">
    <action method="setForcedTitle"><title>Account Dashboard</title></action>
</reference>
3 голосов
/ 31 декабря 2013

Я не думаю, что вы можете сделать это в .phtml, простое решение здесь

Вы установили плитку страницы, например "Отправить письмо другу", поэтому откройте файл sendfriend.xml и задайте код ниже.

 <reference name="head">
        <action method="setTitle" translate="title" module="sendfriend"><title>Email to a Friend</title></action>
    </reference>

это работает ..

0 голосов
/ 11 сентября 2014

Вы можете сделать это просто, отредактировав заголовок страницы в конфигурации «CMS» в админ-панели.Это очень просто, не нужно никакого кодирования.

0 голосов
/ 29 августа 2013

Magento сначала загружает head.phtml. Поэтому мы не можем переопределить заголовок из другого файла шаблона.

У меня было похожее требование. То, что я сделал, было ниже.

<title>
<?php
/*****************Customized For Title***********************/
        $url = $_SERVER['REQUEST_URI']; //Check With url
        $url = parse_url($url, PHP_URL_PATH);
        $url = explode('/',$url);
        $url_key = $url[2]; //Set The url-key           

        $cateUrl = Mage::getModel('catalog/category')->getCollection ()
        ->addAttributeToSelect ('id')
        ->addAttributeToFilter ('url_key',  $url_key) //load the  category
        ->getFirstItem (); //only 1 result ; 

        $catSel = Mage::getModel('catalog/category')->load($cateUrl->entity_id)->getMetaTitle();            

        //If Page title then Update
        if(!empty($catSel))
                 $this->getLayout()->getBlock('head')->setTitle($catSel);

        /*****************Customized For Title***********************/
        echo $this->getTitle() 
?>
</title>

В моем случае мне нужно было проверить URL, и если у URL есть заголовок страницы из категории, он перезапишет его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...