4

我在 Joomla 1.6 中开发了简单的插件我坚持:如何获取文章标题和文章网址。

如果尝试打印以下语句,我没有得到任何输出:

echo $article->title;
echo $article->id;

我已经在 php 文件中编写了这个,没有使用 MVC 架构。在 Joomla 管理端是否需要做任何其他设置?

请建议您提取文章标题和文章网址的指针。

提前致谢!

普拉文

4

5 回答 5

14

为了获得文章 ID,您必须编写以下内容:

echo JRequest::getVar('id');

对于标题,您只需获取您获得的 id,加载文章对象

$blabla = $article->load(ID);
echo $blabla->get('title');
于 2011-05-19T10:05:09.050 回答
9

它似乎JRequest在 2.5 和 3.x 中被弃用,如弃用元素列表中所示。

我宁愿使用以下内容:

$article_id = JFactory::getApplication()->input->get('id');
于 2014-09-09T13:50:05.417 回答
6

我试过 :

public function onContentPrepare($context,&$article, &$params, $limitstart) {
 echo JRequest::getVar('id');
}

我仍然没有得到身份证。这是正确的吗?

文章已加载到您的第二个参数 ( $article) 中。在此事件 ( onContentPrepare) 中,您可以访问的唯一属性是$article->text

为了适合您的目的(获取文章 ID 和标题),您将需要使用另一个名为“ onContentBeforeDisplay”的事件。

public function onContentBeforeDisplay($context, &$article, &$params, $limitstart)

在这里,您(再次)通过第二个参数传递了文章,但现在您可以访问诸如$article->id$article->title许多其他属性。

有关内容事件的未来参考,请查看文件“ plugins\content\example\example.php

于 2011-05-20T09:11:07.523 回答
-3

你可以用来获取这样的活跃文章标题

$menu =& Jsite::getMenu(); echo $menu->getActive()->title;

这可能会有所帮助。

于 2013-06-05T06:07:33.710 回答
-5

要获取 Joomla 文章 ID,请使用此...

<?php echo JRequest::getVar('Itemid'); ?>

在上一个答案中,有人使用id而不是Itemid. 希望这可以帮助!

于 2012-08-08T21:16:40.140 回答