【问题标题】:Request Variables in Joomla在 Joomla 中请求变量
【发布时间】:2012-05-03 07:29:12
【问题描述】:

我是 Joomla 的新手。我正在尝试编写一个模块,该模块将从数据库中获取并显示内容。 现在要从数据库中获取内容,我需要获取当前文章的当前文章 id 和当前文章的类别 id。

我可以使用 JRequest::getVar('id'); 获取带有文章标题附加的 id; 例如:16:abc-def-article-title。

我可以将 id 子串出来,但我认为会有更好的地方来实现它? 而且我还需要获取类别 ID。

另外请告诉我如何查看 JRequest::getVar(') 所持有的所有变量。 非常感谢!!

【问题讨论】:

标签: joomla joomla-extensions joomla1.7


【解决方案1】:

首先,尝试通过getInt()方法提取文章id:

JRequest::getInt('id', 0);

这样更安全,然后getVar()

然后,要获取类别 id,您可以在模块文件中使用此代码:

jimport('joomla.application.component.model');
$articlesModel = JModel::getInstance('ContentModelArticle');

$articleId = JRequest::getInt('id', 0);
$article = $articlesModel->getItem($articleId);
$categoryId = $article->catid;

使用 Joomla!内置模型而不是直接 SQL 查询是理解 Joomla 架构和编写将来易于维护的安全应用程序的最佳方式。

注意:代码示例实际上仅适用于 Joomla 2.5(可能适用于 1.6、1.7,但我不放心)。

【讨论】:

  • 这很好,但如果您在类别/博客列表页面上会引发致命错误。你在哪里找到这个代码,还没有找到任何接近这个的东西,它会非常有用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-20
  • 2020-10-11
  • 2014-05-09
  • 2019-07-26
  • 1970-01-01
  • 2020-07-07
相关资源
最近更新 更多