Joomla将组件中的值传递给插件和模块中使用

时间:2013-08-23 02:31:22

标签: joomla joomla2.5

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

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

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

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

1 个答案:

答案 0 :(得分:0)

我知道有个老问题,但是这里没有答案,而且上面的原始评论有一些变化。 let flutterChannel = FlutterMethodChannel.init(name: "iOS", binaryMessenger: flutterViewController); flutterChannel.setMethodCallHandler { (flutterMethodCall, flutterResult) in if flutterMethodCall.method == "openSermonPlayer" { UIView.animate(withDuration: 0.5, animations: { self.window?.rootViewController = nil let viewToPush = PlayerTabViewController() self.window = UIWindow(frame: UIScreen.main.bounds) self.window?.makeKeyAndVisible() self.window.rootViewController = viewToPush }) if CheckIfPlaying.sharedInstance.quitSermon == true { CheckIfPlaying.sharedInstance.quitSermon = false let result = ["restart_ui": self.switchBack()] flutterResult(result) } } 在最新版本的Joomla中已过时。

当前执行此操作的方法是:

在您的组件代码中:

JRequest

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

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

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