Joomla从组件传递值以用于插件和模块


Joomla pass value from component to use in plugin and module

如何从组件传递值或在某个页面上设置某个值,以便在joomla的插件或模块中使用?

例如,在这个视图中:index.php?option=com_mycom&view=myview将设置$a = 1(它可以从数据库中生成)。

每次人们来到这个地址,都会有一个变量$a = 1,我可以在我的插件中使用它。

我知道有些人建议使用会话,但这对我来说不是解决这个问题的好方法。

我知道这个老问题,但这里没有答案,事情与上面的原始评论略有不同。JRequest在Joomla的最新版本中已被弃用。

目前的做法是:

在您的组件代码中:

$app = JFactory::getApplication();
$app->input->set('myvar', 123);

在您的模块/插件代码中:

$app = JFactory::getApplication();
$app->input->get('myvar');

正如您所说,使用会话对象是实现这一点的另一种方法,但它有一个明显的缺点,即在web请求之间持久化,这通常不是您想要的。