Как обрабатывать задачи и переменные в файле роутера в Joomla - PullRequest
0 голосов
/ 01 декабря 2011

У меня есть Интернет и подготовьте файл маршрутизатора для моего com_listing компонента, используя инструкцию по следующей ссылке

http://forum.joomla.org/viewtopic.php?t=611587

Вот мой код файла роутера

function listingBuildRoute(& $query)
{


     $segments = array();

       if(isset($query['view']))
       {
                $segments[] = $query['view'];
                unset( $query['view'] );
       }





       if(isset($query['task']))
       {
                $segments[] = $query['task'];
                unset( $query['task'] );
       };


       if(isset($query['id']))
       {
                $segments[] = $query['id'];
                unset( $query['id'] );
       };

        if(isset($query['type']))
       {
                $segments[] = $query['type'];
                unset( $query['type'] );
       };

       return $segments;



}

function listingParseRoute($segments)
{


   $vars = array();
       switch($segments[0])
       {
               case 'accomodation':
                       $vars['view'] = 'accomodation';
                        $id = explode( ':', $segments[2] );
                       $vars['type'] = (int) $id[0];
                       break;
               case 'entertainment':
                       $vars['view'] = 'entertainment';
                       $id = explode( ':', $segments[2] );
                       $vars['type'] = (int) $id[0];
                       break;

       }


        switch($segments[1])
       {
               case 'listing':
                       $vars['task'] = 'listing';
                       $vars['task'] =$segments[1];

                       break;
               case 'details':
                       $vars['task'] = 'details';
                       $vars['task'] =$segments[1];

                       break;

       }


       return $vars;




}    

Он успешно готовит URL, как, скажем, для задачи «перечисление» и переменной «тип» URl равен

index.php/component/listing/entertainment/listing/11

, но он не входит в список задач. Он просто показывает представление развлечений. Я думаю, что функция разбора маршрута не вызывается правильно, но я не могу найти правильное решение. Пожалуйста, помогите

1 Ответ

0 голосов
/ 09 декабря 2011

Я думаю, вам нужно использовать $item-­>query['view'] как в этом примере

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...