joomla 1.7 доступ: защищенные параметры меню

Я хочу получить доступ к параметру menu_image меню в joomla 1.7

Normally I just use:
$currentMenuItem = JSite::getMenu()->getActive();

И он дает мне все параметры, как показано ниже, НО данные в объекте params были защищены, поэтому я не могу получить доступ к $currentMenuItem->params->data:protected->menu_image, потому что я не могу использовать: в объекте.

Any1 знает, как это сделать вместо этого?

[params] => JRegistry Object
        (
            [data:protected] => stdClass Object
                (
                    [show_title] => 
                    [link_titles] => 
                    [show_intro] => 
                    [show_category] => 
                    [link_category] => 
                    [show_parent_category] => 
                    [link_parent_category] => 
                    [show_author] => 
                    [link_author] => 
                    [show_create_date] => 
                    [show_modify_date] => 
                    [show_publish_date] => 
                    [show_item_navigation] => 
                    [show_vote] => 
                    [show_icons] => 
                    [show_print_icon] => 
                    [show_email_icon] => 
                    [show_hits] => 
                    [show_noauth] => 
                    [menu-anchor_title] => 
                    [menu-anchor_css] => 
                    [menu_image] => images/joomla_black.gif
                    [menu_text] => 1
                    [page_title] => 
                    [show_page_heading] => 0
                    [page_heading] => 
                    [pageclass_sfx] => 
                    [menu-meta_description] => 
                    [menu-meta_keywords] => 
                    [robots] => 
                    [secure] => 0
                )

        )

person Hans Wassink    schedule 13.12.2011    source источник


Ответы (1)


Как указал @tereško: вы расширяете класс и создаете геттер. Итак, у joomla уже есть геттер: так вот (например, получить защищенное изображение menu_image)

$currentMenuItem = JSite::getMenu()->getActive();
$currentMenuItem->params->get('menu_image', 'images/no-image.jpg');
person Hans Wassink    schedule 13.12.2011
comment
Большое спасибо, я тоже боролся с этим в 2.5! - person Ahmad Alfy; 12.04.2012