Как работает маршрутизация: различия между версиями

Материал из GLENN CMS WIKI
Перейти к навигации Перейти к поиску
(Новая страница: «По умолчанию вызываемый урл транслируется как /plugin/controller/action, но каждый плагин может с по...»)
 
Нет описания правки
Строка 9: Строка 9:
     '/:lng/video',      /// lng - переменная которая перейдёт как параметр в экшн
     '/:lng/video',      /// lng - переменная которая перейдёт как параметр в экшн
     array(
     array(
         'module'    => 'video',
         'module'    => 'video',   ///  плагин
         'controller'    => 'index',
         'controller'    => 'index',   /// контроллер
         'action'    => 'index',
         'action'    => 'index',     //// экшн
         'type'      => 'yt'
         'type'      => 'yt'     ////  дополнительня фиксированная переменная
     ),
     ),
     array('lng' => '[a-z]{2}')    //// она будет считаться переменной только если будет соответствовать такому формату
     array('lng' => '[a-z]{2}')    //// она будет считаться переменной только если будет соответствовать такому формату

Версия от 12:33, 13 сентября 2022

По умолчанию вызываемый урл транслируется как /plugin/controller/action, но каждый плагин может с помощью файла system/routes.php добавлять кастомные маршруты там указывается урл и какие он будет вызывать /плагин/контроллер/экшн

Примеры


$router = Zend_Controller_Front::getInstance()->getRouter();

$route = new Zend_Controller_Router_Route(

   '/:lng/video',       /// lng - переменная которая перейдёт как параметр в экшн
   array(
       'module'    => 'video',    ///  плагин
       'controller'    => 'index',   /// контроллер
       'action'    => 'index',     //// экшн
       'type'      => 'yt'      ////  дополнительня фиксированная переменная
   ),
   array('lng' => '[a-z]{2}')    //// она будет считаться переменной только если будет соответствовать такому формату

);

$router->addRoute('video_rou',$route);