Joomla为图像url创建Router.php


Joomla create Router.php for images url

我试图创建router.php来设置img src形式的SEF url。要在src中显示它,我将其用作休闲:

<?php echo JRoute::_(JURI::root().'components/com_mycomponent/myimg/mythumb/'.$thumb->id.'.'.jpg); ?>

要编写路由器,我使用Joomla Wiki中的指令,但没有结果:/

我只是不知道如何写一个路由器的图像src??

我希望有人能帮助我。

我的router.php 代码

function [componentname]BuildRoute(&$query)
{
       $segments = array();
       if (isset($query['catid']))
       {
                $segments[] = $query['catid'];
                unset($query['catid']);
       };
       if (isset($query['id']))
       {
                $segments[] = $query['id'];
                unset($query['id']);
       };
       unset($query['view']);
       return $segments;
}
function [componentname]ParseRoute($segments)
{
       $vars = array();
       $app = JFactory::getApplication();
       $menu = $app->getMenu();
       $item = $menu->getActive();
       // Count segments
       $count = count($segments);
       // Handle View and Identifier
       switch ($item->query['view'])
       {
               case 'categories':
                       if ($count == 1)
                       {
                               $vars['view'] = 'category';
                       }
                       if ($count == 2)
                       {
                               $vars['view'] = 'article';
                       }
                       $id = explode(':', $segments[$count-1]);
                       $vars['id'] = (int) $id[0];
                       break;
               case 'category':
                       $id = explode(':', $segments[$count-1]);
                       $vars['id'] = (int) $id[0];
                       $vars['view'] = 'article';
                       break;
       }
       return $vars;
}

我使用上面的代码,我更改了组件名称,并更改了文件夹上的catid和id,例如muimg和mythumb

很抱歉,如果这个问题是哑的,但我在joomla开发方面很新

我有点不确定你到底想实现什么,但你的第一个代码片段不正确,会导致错误。所以你需要改变这个:

(JURI::root().'components/com_mycomponent/myimg/mythumb/'.$thumb->id.'.'.jpg);

到此:

(JUri::root().'components/com_mycomponent/myimg/mythumb/'.$thumb->id.'.jpg');