Zend headtitle с использованием zend_navigation - PullRequest
3 голосов
/ 09 сентября 2010

Я использую zend_navigation для создания меню.Который работает отлично.Теперь я смотрю, могу ли я взять текущую страницу и установить ее как заголовок страницы, используя headTitle.Есть ли способ сделать это?

или

как я могу использовать файлы конфигурации (.ini) для создания Pagetitle и метаданных?

1 Ответ

7 голосов
/ 08 ноября 2010

В контроллере вы можете получить текущую активную страницу и получить ее метку.Затем вы можете установить его в качестве заголовка страницы.

//get active page and its label
$activePage = $this->view->navigation()->findOneBy('active', true);
$label = $activePage->get('label');

//set page label as html title
$this->view->headTitle($label);

Вы также можете написать собственный плагин, который сделает это за вас в каждом запросе:

class Plugin_NavigationTitle extends Zend_Controller_Plugin_Abstract
{
    function preDispatch(Zend_Controller_Request_Abstract $request)
    {
        //get view
        $view = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer')->view;

        //get active page and its label
        $activePage = $view->navigation()->findOneBy('active', true);
        $label = $activePage->get('label');

        //set page label as html title
        $view->headTitle($label);
    }
}
...