我目前正在使用 Zend Framework 1.12 创建一个项目管理系统,但我遇到了该Zend_Navigation::Sitemap()
方法的问题。
我在其中有一个名为的控制器SitemapController
,indexAction()
它禁用了布局。然后,我的/views/scripts/sitemap/index.phtml
脚本渲染站点地图。
问题是:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"/>
这就是我在/sitemap
URI 中得到的全部内容。即使我navigation.xml
的被填满。
这是我的所有代码:
索引.phtml
<?php
$this->navigation()->sitemap()->setFormatOutput(true)
->setUseSchemaValidation(false)
->setUseXmlDeclaration(true)
->setUseSitemapValidators(true);
echo $this->navigation()->sitemap()->render($this->navigation);
?>
站点地图控制器.php
<?php
class SitemapController extends Zend_Controller_Action
{
public function init()
{
/* Initialize action controller here */
}
public function indexAction()
{
$this->view->layout()->disableLayout();
}
}
引导程序.php
/**
* @return Zend_Navigation
*/
protected function _initNavigation()
{
$view = $this->bootstrap('layout')->getResource('layout')->getView();
$config = new Zend_Config_Xml(APPLICATION_PATH.'/configs/navigation.xml', 'nav');
$navigation = new Zend_Navigation($config);
$view->navigation($navigation);
}
导航.xml
<?xml version="1.0" encoding="UTF-8"?>
<configdata>
<nav>
<home>
<label>Tableau de Bord</label>
<controller>index</controller>
<action>index</action>
</home>
<project>
<label>Projets</label>
<controller>project</controller>
<action>index</action>
</project>
<tasks>
<label>Tâches</label>
<controller>tasks</controller>
<action>index</action>
</tasks>
<messages>
<label>Messages</label>
<controller>messages</controller>
<action>index</action>
</messages>
</nav>
</configdata>
有人能告诉我为什么它没有按预期呈现站点地图吗?