I'm using WordPress 3.0 Menus, which the WPML (wordpress multilingual) plugin claims to have added support for in a recent release. I am using the most current version of the plugin.

My problem is that using the following to call my nav menus

<?php wp_nav_menu( array( 'theme_location' => 'primary', 'container_class' => 'menu-header', 'menu_id' => 'menu-primary-navigation' ) ); ?>

is pulling up only the English translation of the menu.

Here is an image of the WPML admin panel and how the menus are setup multilingual:

[link to image] http://cl.ly/42RW [link to image] http://cl.ly/42o0

You can see the site currently in development:


The problem is that when you go to the French translated page, the menu is still in English (despite the fact that I've already set up the French menu)


  • Can you check if it works with the default theme.
    – Wyck
    Jan 16, 2011 at 21:33
  • Good point. It doesn't, it's a bug in the plugin, see below for workaround.
    – Brian
    Feb 3, 2011 at 21:28

1 Answer 1


I ended up having to manually detect the language, here's how I solved it:

<?php if (ICL_LANGUAGE_CODE == 'fr')
        // display the menu en francais 
            wp_nav_menu( array( 'menu' => 'Navigation principale', 'theme_location' => 'primary', 'container_class' => 'menu-header', 'menu_id' => 'menu-primary-navigation' ) );       
        else {  
        // show them the menu in English
            wp_nav_menu( array( 'menu' => 'Primary Navigation', 'theme_location' => 'primary', 'container_class' => 'menu-header', 'menu_id' => 'menu-primary-navigation' ) );
        }; ?>  

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.