由于我切换到SEF网址,因此我无法再访问ID + itemid编号(之前显示在网址中)。
我正在寻找一种从前端获取这些信息的方法。
Joomla 2.5没有真正的前端设置。
将检索这些信息的基本模块(对于注册用户)将是超级的。我确实试图找到一个扩展,显示关于页面的这些重要信息,但没有成功。
任何想法?
答案 0 :(得分:5)
有几种方法可以获取此信息:
1)你可以使用一些简单的代码来获取它,你可以把它放在从模板到自定义模块的任何地方(不是custom_html,而是你从头开始构建的模块):
$input = JFactory::getApplication()->input;
$itemid = $input->getInt('Itemid');
$articleid = $input->getInt('id'); // this might also be 'cid'
2)在菜单管理器中,当您创建指向页面的链接时,您可以获得非sef链接。只需转到后端页面的菜单项,你会发现非sef链接在那里:index.php?option=com_content&id=5&catid=4
唯一不在该字符串中的是Itemid,你必须只需键入以下内容即可自行添加:& Itemid = xy,无论您在何处使用它。
3)如果你使用像JCE这样的扩展来编辑你的内容,无论你在哪里建立链接,这将自动查找你正在链接的文章的正确项目ID。
4)如果你正在使用像shs404sef这样的SEF工具,你可以查看所有的SEF URL并找到与之相关的非sef网址。
答案 1 :(得分:1)
我确实在像jumi这样的模块中插入了这段代码 (将访问权限设置为仅限注册)
<?php
$input = JFactory::getApplication()->input;
$itemid = $input->getInt('Itemid');
echo "Itemid =".$itemid;
?>
<br />
<?php
$articleid = $input->getInt('id'); // this might also be 'cid'
echo "Article ID =".$articleid;
?>