Php Joomla Menuitem SEF url
我正在乔姆拉建造一个模块。我正在使用模块参数(Menuitem)。它将菜单id返回到模块中的default.php文件 然后,我使用以下代码构建一个URL:Php Joomla Menuitem SEF url,php,url,joomla,joomla-sef-urls,Php,Url,Joomla,Joomla Sef Urls,我正在乔姆拉建造一个模块。我正在使用模块参数(Menuitem)。它将菜单id返回到模块中的default.php文件 然后,我使用以下代码构建一个URL: $itemID = $params->get( 'url' ); // Menuitem id $application = JFactory::getApplication(); $menu = $application->getMenu(); $item = $menu->getItem( $itemID ); $li
$itemID = $params->get( 'url' ); // Menuitem id
$application = JFactory::getApplication();
$menu = $application->getMenu();
$item = $menu->getItem( $itemID );
$link = new JURI($item->link);
$link->setVar( 'ItemId', $itemid );
$articleLink = $link;
它工作正常,但链接不是SEF url:
它是:
index.php/component/content/article?id=25
而不是:
index.php/call-back-request
如何将url转换为SEF url?任何帮助都会显示出来您可以使用JRoute创建sef url。 这可能对你有帮助-
$link=JRoute::_($link);
欲了解更多详情,请阅读以下内容:
更新:
//article sef
$catslug = $row->catid.':'.$row->category_alias;
$slug = $row->id.':'.$row->alias;
$link = JRoute::_(ContentHelperRoute::getArticleRoute($slug, $catslug));
嗨,谢谢你的回答,我试过了,但它似乎忽略了:(@SebastianOpperman:我已经更新了代码,请看一看。