问题描述
我实际上是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 (将#修改为@)