Route beiðnir um sitemap.xml til sérsniðna stjórnandi / aðgerð
Til þess að beina beiðni um / sitemap.xml að sérsniðnum stjórnandi og aðgerða í þínu Zend Framework umsókn einfaldlega bæta við the hópur stuðningsmanna í application.ini eða önnur config skrána (td ég nota navigation.ini):
resources.router.routes.sitemap.route = "sitemap.xml" resources.router.routes.sitemap.defaults.controller = vísitölu resources.router.routes.sitemap.defaults.action = sitemap
Dæmi kóðann fyrir outputting hægt að sjá með því að búa mál í viðeigandi stjórnandi (td sitemap minn liggur í vísitölunni stjórnandi, sitemap aðgerð):
< PHP flokki IndexController nær Zend_Controller_Action { / ** * Gerir sitemap byggir á skipulag Zend_Navigation * / opinber virka sitemapAction () { echo $ þessu-> view-> siglingar () -> Veftré (); $ Þessu-> view-> skipulag () -> disableLayout (); $ Þessu-> _helper-> viewRenderer-> setNoRender (satt); } }
Sitemaps geta fljótt og auðveldlega að mynda með Zend_Navigation , frábær fljótur eitthvert (og almennt mjög gagnlegt fyrir Zend Framework námskeið) er Zend rangir - Dynamically skapa matseðill sitemap og breadcrumbs .


















































Eitt sem ég gleymdi að nefna er að þú þarft einnig að tilgreina staðlaða leið til sitemap þína, annars allar slóðir vilja benda á / sitemap.xml Ef þú notar Zend_Navigation_Page_Mvc (ef þú ert að gefa URIs það mun ekki vera vandamál ).
Til dæmis nýjustu verkefnið mitt notar eftirfarandi vegvísun:
; ==============================
; Resource Bankanúmer
; ==============================
resources.router.routes.www.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.www.route = ": module.example.com"
resources.router.routes.www.defaults.module = "sjálfgefið"
resources.router.routes.www.chains.index.type = "Zend_Controller_Router_Route"
resources.router.routes.www.chains.index.route = ": stjórnandi /: Hasar / *"
resources.router.routes.www.chains.index.defaults.controller = "vísitölu"
resources.router.routes.www.chains.index.defaults.action = "vísitölu"
resources.router.routes.sitemap.type = "Zend_Controller_Router_Route"
resources.router.routes.sitemap.route = "sitemap.xml"
resources.router.routes.sitemap.defaults.controller = vísitölu
resources.router.routes.sitemap.defaults.action = sitemap
Því í navigation.xml mínum (eða hvað sem samsk þú ákveður að nota), youll 'þörf til tilgreina vegvísun til notkunar, td
default.pro.pages.aboutUs.label = "Fyrirtækið"
default.pro.pages.aboutUs.module = "www"
default.pro.pages.aboutUs.controller = "um-okkur"
default.pro.pages.aboutUs.action = "vísitölu"
default.pro.pages.aboutUs.resource = "www_pages"
default.pro.pages.aboutUs.route = "www-vísitölu"
[...] Framhald á síðasta innlegginu mínu um Zend_Navigation, Route beiðnir um sitemap.xml til sérsniðna stjórnandi / aðgerð, this staða er um dymnamically bæta síðum við Zend_Navigation gám á afturkreistingur / script [...]
Ég hef alvarleg vandamál, ég get ekki leyst það: (
Ég hef router.ini
resources.router.routes.sitemap.type = "Zend_Controller_Router_Route"
resources.router.routes.sitemap.route = "sitemap.xml"
resources.router.routes.sitemap.defaults.controller = vísitölu
resources.router.routes.sitemap.defaults.action = sitemap
og bootstrap.php
vernda virka _initRouter ()
{
$ FrontController = Zend_Controller_Front:: getInstance ();
$ Samsk = new Zend_Config_Ini (APPLICATION_PATH '/ config / router.ini'.);
$ Leið = $ frontController-> getRouter ();
$ Leið-> addConfig ($ samsk, 'leið');
}
og ég fæ þessa villu:
Undantekning upplýsingar:
Message: Invalid stjórnandi tilgreint (sitemap.xml)
Beiðni Breytur:
array (
'Stjórnandi' => 'sitemap.xml',
'Aðgerð' => 'Efnisyfirlit',
'Eining' => 'sjálfgefið',
)
Það virðist sem þú ert að missa nokkrar færslur, að reyna að uppfæra leiðir til að passa:
resources.router.routes.sitemap.type = "Zend_Controller_Router_Route_Static"
resources.router.routes.sitemap.route = "sitemap.xml"
resources.router.routes.sitemap.controller = "vísitölu"
resources.router.routes.sitemap.action = "sitemap"
resources.router.routes.sitemap.defaults.module = "www"
resources.router.routes.sitemap.defaults.controller = "vísitölu"
resources.router.routes.sitemap.defaults.action = "sitemap"
resources.router.routes.sitemap.defaults.route = "www-vísitölu"