使用articleID从外部脚本获取文章的SEF路径

问题描述

我实际上是Joomla的新手,我需要从外部PHP脚本获取文章的SEF路径。我觉得我已经接近了,但是有些东西对我来说不起作用。我作为示例的初步代码是:

    require_once ( JPATH_BASE .DS.'includes'.DS.'defines.PHP' );
    require_once ( JPATH_BASE .DS.'includes'.DS.'framework.PHP' );
    $mainframe = JFactory::getApplication('site');
    $mainframe->initialise();

    $articleId=80;

    $url = JRoute::_("index.PHP?option=com_content&view=article&id=".$articleId);

使用此方法,JRoute返回路径/component/content/article?Id=80&Itemid=437。做完一些研究后,我读到我必须包含菜单的“ itemId”。我不确定JRoute返回给我的是“ 437”,还是我应该单独获取它。根据我的阅读,获取菜单项ID的一种方法是:

$link = 'index.PHP?option=com_content&view=article&id='.$articleId ;
$menu = $mainframe->getMenu();
$menuItem = $menu->getItems( 'link',$link,true );
$Itemid = $menuItem->id;

但是$Itemid返回空。我很高兴有人可以指导我。我需要的是构建文章的SEF路径,而不管其菜单结构如何。我的最终需要是根据外部PHP脚本的articleID创建指向该文章链接

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)