doupao6011 2011-12-01 08:59
浏览 25

如何处理Joomla中路由器文件中的任务和变量

I have Browse the web and prepare a router file for my component com_listing by using instruction on following link

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

Here is my code of router file

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;




}    

It is preparing the URL Successfully as say for a task "listing" and variable "type" the URl is

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

but it is not actuly going in the task listing.It is just showing the view entertainment.I think parse route function is not calling properly But i am not reaching to the correct solution.Please Help

  • 写回答

1条回答 默认 最新

  • doudeng9425 2011-12-08 22:56
    关注

    I think you need to use $item-­>query['view']like this example

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。