Пат барања за sitemap.xml да сопствени контролер / акција
Со цел да се насочи барања за / sitemap.xml на сопствени контролер и акција во Zend Framework апликации едноставно додадете го следново во Вашиот application.ini или алтернативни конфиг фајл (на пример јас го користам navigation.ini):
resources.router.routes.sitemap.route = "sitemap.xml" resources.router.routes.sitemap.defaults.controller = индекс resources.router.routes.sitemap.defaults.action = Мапа на сајтот
Пример код за Ставање може да се види со создавање на акција во соодветните контролер (на пример, мојата карта е во индекс контролер, карта акција):
< PHP класа IndexController се протега Zend_Controller_Action { / ** * Приказ Мапа на сајтот врз основа на Zend_Navigation подесување * / јавна функција sitemapAction () { echo $ ова-> View-> навигација () -> Мапа на сајтот (); $ Ова-> View-> распоред () -> disableLayout (); $ Ова-> _helper-> viewRenderer-> setNoRender (вистинска); } }
Sitemaps брзо и лесно може да бидат генерирани со користење Zend_Navigation , голем брзо Почетен курс (и обично се многу корисни за Zend Framework вежби) е Zend фрла - Динамички создавање мени Мапа на сајтот и breadcrumbs .


















































Едно заборавив да се спомене е дека исто така ќе треба да наведете вашиот стандард пат за вашиот Мапа на сајтот, во спротивно сите адреси ќе точка за / sitemap.xml ако користите Zend_Navigation_Page_Mvc (ако сте обезбедување на врски нема да има проблем ).
На пример мојот најнов проект користи следните рутирање:
; ==============================
; Ресурси Рутирање
; ==============================
resources.router.routes.www.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.www.route = ": module.example.com"
resources.router.routes.www.defaults.module = "стандардно"
resources.router.routes.www.chains.index.type = "Zend_Controller_Router_Route"
resources.router.routes.www.chains.index.route = ": контролер /: акција / *"
resources.router.routes.www.chains.index.defaults.controller = "индекс"
resources.router.routes.www.chains.index.defaults.action = "индекс"
resources.router.routes.sitemap.type = "Zend_Controller_Router_Route"
resources.router.routes.sitemap.route = "sitemap.xml"
resources.router.routes.sitemap.defaults.controller = индекс
resources.router.routes.sitemap.defaults.action = Мапа на сајтот
Затоа во мојот navigation.xml (или што конфигурација ќе одлучите да се користи), ќе треба да наведете рутирање да се користи, на пример,
default.pro.pages.aboutUs.label = "Профил на компанијата"
default.pro.pages.aboutUs.module = "www"
default.pro.pages.aboutUs.controller = "околу-нас"
default.pro.pages.aboutUs.action = "индекс"
default.pro.pages.aboutUs.resource = "www_pages"
default.pro.pages.aboutUs.route = "www-индекс"
[...] Продолжение на мојот последен пост за Zend_Navigation, пат барања за sitemap.xml да сопствени контролер / акција, овој пост е за dymnamically додавајќи страници на Zend_Navigation сад во траење / script [...]
Имам сериозни проблеми, не можам да се реши: (
Имам router.ini
resources.router.routes.sitemap.type = "Zend_Controller_Router_Route"
resources.router.routes.sitemap.route = "sitemap.xml"
resources.router.routes.sitemap.defaults.controller = индекс
resources.router.routes.sitemap.defaults.action = Мапа на сајтот
и bootstrap.php
функција заштитена _initRouter ()
{
$ FrontController = Zend_Controller_Front:: getInstance ();
$ Config = new Zend_Config_Ini (APPLICATION_PATH "/ config / router.ini.);
$ Рутер = $ frontController-> getRouter ();
$ Рутер-> addConfig ($ config "рутер ');
}
и јас ја добијат оваа грешка:
Исклучок информации:
Порака: Невалиден контролер определен (sitemap.xml)
Барање Параметри:
низа (
"Контролер '=>' sitemap.xml,
"Акција '=>' Индекс ',
Модул '=>' Стандардно ',
)
Се чини дека сте недостасува неколку записи, обидете се надградба на вашиот правци натпревар:
resources.router.routes.sitemap.type = "Zend_Controller_Router_Route_Static"
resources.router.routes.sitemap.route = "sitemap.xml"
resources.router.routes.sitemap.controller = "индекс"
resources.router.routes.sitemap.action = "Мапа на сајтот"
resources.router.routes.sitemap.defaults.module = "www"
resources.router.routes.sitemap.defaults.controller = "индекс"
resources.router.routes.sitemap.defaults.action = "Мапа на сајтот"
resources.router.routes.sitemap.defaults.route = "www-индекс"