在前端Joomla 2.5上显示文章ID +页面itemid:

时间:2014-02-19 12:38:18

标签: joomla module joomla2.5 frontend

由于我切换到SEF网址,因此我无法再访问ID + itemid编号(之前显示在网址中)。

我正在寻找一种从前端获取这些信息的方法。

Joomla 2.5没有真正的前端设置。

将检索这些信息的基本模块(对于注册用户)将是超级的。我确实试图找到一个扩展,显示关于页面的这些重要信息,但没有成功。

任何想法?

2 个答案:

答案 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; 
?>