it-swarm-eu.dev

Come ottenere l'alias o il titolo della voce di menu attiva?

Nel mio modello voglio dare una classe extra al corpo del documento che prenderà i nomi dell'alias della voce di menu, in modo da poter creare uno stile individuale tra le pagine.

Ma come posso ottenere l'alias o il titolo della voce di menu attiva?

6
FFrewin

Per ottenere i dati della voce di menu attiva (corrente), utilizzare il seguente codice:

 $app       = JFactory::getApplication(); // Access the Application Object

 $menu      = $app->getMenu(); // Load the JMenuSite Object

 $active    = $menu->getActive(); // Load the Active Menu Item as an stdClass Object

$active è un oggetto della voce di menu corrente.

Con print_r($active) puoi avere una visione di tutte le sue proprietà.

Esempio di output del precedente print_r();

stdClass Object
(
    [id] => 136
    [menutype] => main-menu
    [title] => Photos
    [alias] => photos
    [note] => 
    [route] => photos
    [link] => index.php?option=com_content&view=article&id=157
    [type] => component
    [level] => 1
    [language] => en-US
    [browserNav] => 0
    [access] => 1
    [params] => Joomla\Registry\Registry Object
        (
            [data:protected] => stdClass Object
                (
                    [show_title] => 
                    [link_titles] => 
                    [show_intro] => 
                    [info_block_position] => 
                    [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_tags] => 
                    [show_noauth] => 
                    [urls_position] => 
                    [menu-anchor_title] => 
                    [menu-anchor_css] => 
                    [menu_image] => 
                    [menu_text] => 1
                    [page_title] => 
                    [show_page_heading] => 0
                    [page_heading] => 
                    [pageclass_sfx] => 
                    [menu-meta_description] => 
                    [menu-meta_keywords] => 
                    [robots] => 
                    [secure] => 0
                )

        )

    [home] => 0
    [img] => 
    [template_style_id] => 0
    [component_id] => 22
    [parent_id] => 1
    [component] => com_content
    [tree] => Array
        (
            [0] => 136
        )

    [query] => Array
        (
            [option] => com_content
            [view] => article
            [id] => 157
        )

)

Per usare una qualsiasi delle proprietà, puoi fare eco $active->'property name';

per esempio. echo $active->alias;

10
FFrewin