Route beiðnir um sitemap.xml til sérsniðna stjórnandi / aðgerð

Með því að Steven Lloyd Watkin , miðvikudagur 6. janúar, 2010 12:13

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 .

4 Responses to "Route beiðnum um sitemap.xml til sérsniðna stjórnandi / aðgerð"

  1. 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"

  2. [...] 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 [...]

  3. Walter segir:

    É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"

Skildu eftir svar













Panorama Þema eftir Themocracy

5 gestir tengdir núna
2 gestir, 3 Botswana, 0 meðlimir
Max gestir í dag: 22 við 07:58 UTC
Þessi mánuður: 52 á 18-06-2011 03:11 UTC
Á þessu ári: 130 á 28-03-2011 22:40 UTC
Allra tíma: 130 á 28-03-2011 10:40 UTC