2012-03-09 64 views
0

我有自定义编码的Joomla v1.5组件。在管理员区域中,我更改其参数,但是当我在代码中使用参数值时,我仅获取默认值,但不是我在组件管理员区域参数窗口中设置的新值。Joomla 1.5无法保存组件参数

global $option; 
$params = &JComponentHelper::getParams($option); 

print_r($params); 

输出看起来是这样的:

JParameter Object 
(
    [_raw] => param_1=This is changed value of the param 1 
param_2=20 
param_3=This is changed value of the param 3 
    [_xml] => 
    [_elements] => Array 
     (
     ) 

    [_elementPath] => Array 
     (
      [0] => /home/x/domains/xyz.com/public_html/libraries/joomla/html/parameter/element 
     ) 

    [_defaultNameSpace] => _default 
    [_registry] => Array 
     (
      [_default] => Array 
       (
        [data] => stdClass Object 
         (
          [param_1] => some default value 1 
          [param_2] => 10 
          [param_3] => some default value 3 
         ) 

       ) 

     ) 

    [_errors] => Array 
     (
     ) 

) 

你怎么在输出帕拉姆原始数据的变化,但数据字段没有。所以有什么问题 ?有任何想法吗 ?

回答

1

我发现了这个问题。所以当我创建一个菜单链接到我的组件视图时,它复制了菜单项params列表中的组件参数。因此它覆盖了主要组件参数。这就是为什么如果我在组件参数窗口(管理区域)中更改参数值,我只能得到菜单项窗口中的参数值。在Joomla论坛中还发现了一些关于它的更多信息:http://forum.joomla.org/viewtopic.php?f=304&t=485837