Drupal 7: How to insert site's Main Menu and also use my custom style on it? I've a menu like this-

&lt;!-- Main Menu --&gt;
&lt;ul class="nav sf-menu clearfix"&gt;
    &lt;li&gt;&lt;a href="about.html"&gt;About Us&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="index.html"&gt;Artists&lt;/a&gt;&lt;em&gt;&lt;/em&gt;&lt;/li&gt;
    &lt;li class="sub-menu"&gt;&lt;a href="index.html"&gt;Works&lt;/a&gt;&lt;em&gt;&lt;/em&gt;
    &lt;ul&gt;
            &lt;li&gt;&lt;a href="#"&gt;Dolore ipsu&lt;/a&gt;&lt;/li&gt;
            &lt;li class="sub-menu"&gt;&lt;a href="#"&gt;Consecte&lt;/a&gt;
            &lt;ul&gt;
                    &lt;li&gt;&lt;a href="#"&gt;Dolore ipsu&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href="#"&gt;Consecte&lt;/a&gt;&lt;/li&gt;
                    &lt;li&gt;&lt;a href="#"&gt;Elit Conseq&lt;/a&gt;&lt;/li&gt;
            &lt;/ul&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;Elit Conseq&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;a href="index.html"&gt;Blog&lt;/a&gt;&lt;em&gt;&lt;/em&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="contact.html"&gt;Contacts&lt;/a&gt;&lt;em&gt;&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- End Main Menu --&gt;


There's a whole section of CSS style information for that plain HTML section.
I've tried to add the site's Main Menu to page.tpl but it isn't showing up When I add the following PHP code- 

&lt;?php
    $menu = menu_navigation_links('menu-main-page');
    print theme('links__menu_main_page', array('links' =&gt; $menu));
?&gt;


What am I doing wrong here?

Also when it DOES show up, I'd like to which elements are printed exactly when trying to include the menu and how to assign the generated ul / li to some classes, as required for the CSS to apply style to those elements?
In Bartik, menu is added like that:

    &lt;?php if ($main_menu): ?&gt;
      &lt;div id="main-menu" class="navigation"&gt;
        &lt;?php print theme('links__system_main_menu', array(
          'links' =&gt; $main_menu,
          'attributes' =&gt; array(
            'id' =&gt; 'main-menu-links',
            'class' =&gt; array('links', 'clearfix'),
          ),
          'heading' =&gt; array(
            'text' =&gt; t('Main menu'),
            'level' =&gt; 'h2',
            'class' =&gt; array('element-invisible'),
          ),
        )); ?&gt;
      &lt;/div&gt; &lt;!-- /#main-menu --&gt;
    &lt;?php endif; ?&gt;


Except the fact that $main_menu was not provided in page.tpl.php nor in template.php, apparently created by menu module, it looks like your code, just more elaborate. This indicates that either in menu_navigation_links or in theme you passed an argument that happens not to work. Except that it should be all right. Use dpr() or var_dump() to see which one fails.

If you need better control over your menus, I suggest using Menu block module to put them. This module allows you to treat menus or their parts as a blocks, so in your template all you need to do is to output proper region.

To get classes on menu items, you can simply use Menu attributes module:


  The module currently allows you to set the following attributes for each menu item:
  
  
  Id
  Name
  Target
  Rel
  Class
  Style
  Accesskey