我为joomla 2.5构建了一个自定义组件。现在我想实现sef网址。所以我开始创建router.php
文件。我几乎成功了。我唯一想要改变的是删除组件名称链接。这是我得到的:
http://host.tld/component/componentname/
如果我使用别名创建菜单项,则sef url如下所示:
这是我想要的实际方案,但只有在我从菜单中点击menuitem时才会显示。如果我在家庭网站,这不起作用。
答案 0 :(得分:1)
自己解决了这个问题:
如果您的组件只有一个菜单项(否则您必须选择正确的菜单项),您只需将这些行添加到您的代码中:
$app = JFactory::getApplication();
$menu = $app->getMenu();
$items = $menu->getItems('component', 'com_games');
if (!isset($query['Itemid']))
$query['Itemid'] = $items->id;
现在joomla使用菜单项别名来生成sef urls。