Best way to render menus depending on language

What is the best way to render menus depending on language?
If possible without code element.
I’ve tried to set each menu in a template and render the template depending on some term, but not working.


I use Polylang and I created one menu for each language. You can also use polylang to create different header template for different language.

I’ve tried, using the conditions by term, right? and then it appears a “English()” and also “English(languages)” terms, I’ve tried with both but this didn’t work.

it’s this way you did it?

No, I create the other way.
First, I created one menu for each language.

Then I created header templates and assigned them to specific language.

And lastly, I just change which menu to show in which header. So for english variant, I choose ENG menu, for german, I choose German menu…

And it works :slight_smile:

1 Like

Ahh okey! have sense… The only problem is that if you have a complex header, then when you need to do some change, you need to do it twice, or keep common structures in differents templates…

But thanks! it’s good solution if there isn’t another way!

Yes, that is true. For any changes you need to change on all languages. Or you can change one, delete others and then set it up again :slight_smile:

Hey there. I was trying to do the same. I have Polylang installed but the language/flag options don’t show up in the templates. So I am not able to add another menu in a different language.

Is anyone had the same problem?

Maybe you have to check your settings for Polylang:

1 Like

Thank you for your quick answer. Yeah it was not selected.