【发布时间】:2012-10-20 14:04:12
【问题描述】:
我尝试在component area 中获取plugin params,但没有得到结果。
有没有办法获取值。
【问题讨论】:
标签: joomla joomla2.5 joomla-extensions
我尝试在component area 中获取plugin params,但没有得到结果。
有没有办法获取值。
【问题讨论】:
标签: joomla joomla2.5 joomla-extensions
希望这会对您有所帮助-Read more
JPluginHelper::getPlugin($type, $plugin) //会返回插件
举例-
$plugin = JPluginHelper::getPlugin('authentication', 'ldap');
//$params = new JParameter($plugin->params);//backward compatibility
$params = new JRegistry($plugin->params);//Joomla 1.6 Onward
echo $params->get('param_name','default_value');
$params 将像普通的JParameter 对象一样工作,并使您能够获取值。
注意:使用JRegistry代替JParameter
【讨论】:
JParameter 在 Joomla v1.6.x、Joomla v2.5.x 和 Joomla v3.0.x 中已弃用。reference
如果要解码参数值,请使用JRegistry 而不是JParameter
示例
$plugin = JPluginHelper::getPlugin('system', 'sslredirect');
$params = new JRegistry($plugin->params);
echo $params->get('param_name','default_value');
parameter.php中的弃用消息
// Deprecation warning.
JLog::add('JParameter::__construct is deprecated.', JLog::WARNING, 'deprecated');
【讨论】:
这是 PHP 中 Joomla 代码的 sn-p,让您可以在 Joomla 中的任何位置访问插件参数
// Get plugin 'my_plugin' of plugin type 'my_plugin_type'
$plugin = JPluginHelper::getPlugin('my_plugin_type', 'my_plugin');
// Check if plugin is enabled
if ($plugin)
{
// Get plugin params
$pluginParams = new JRegistry($plugin->params);
$param1 = $pluginParams->get('param1');
$param2 = $pluginParams->get('param2');
$param3 = $pluginParams->get('param3');
}
【讨论】: