How to do location-based language switching?

I’ve seen many sites where they display the content in the language corresponding to the country that matches your IP address, both big and small.

Is it possible to do this in RapidWeaver, and how would one go about doing it?

For the first version, I’d like to switch between two languages, one for locals, and English for anyone with a “foreign” IP address. How can I do this?



Maybe Joe Workmans “Geo Target” stack is what you’re looking for:


@instacks has a stack called localizer that lets you easily have content in multiple languages. Very simple to setup and use. It supports a couple different cms systems you can check it out here


Also, there is RWML stack from Tsooj Media, which I am using in my family portal (I got members of the family who speak 3 different languages). This suite of stacks works flawlessly for me.

Here is an online User Guide.

1 Like

Thanks for the suggestions. I don’t want an on-the-fly translation, rather separate contents or even site based on location. The JoeWorkman one looks closest, although the more I research it, it seems this is pretty trivial to do with the same service his stack uses and a few lines of javascript. I’ll have to look into it closer.


1 Like

This is exactly what Localizer does… Quick, simple and easy.


@swilliam @Rovertek I think you ignore Finns wish that the country-detection should happen automatically (that’s what he mentioned with “…matches your IP address” in his first post…

It uses the browser language to auto detect (you can also give them a language button)

Localizer Stack evaluates the browser language given by the user. If this language was foreseen in the translation, the respective texts will be displayed, if not, a fallback version will be used. It is also possible to let the user decide which language to choose from.

Just as an added thought, If I’m traveling in Italy I don’t necessarily want a site to detect my IP and give me Italian as the language. Thats why IMO it’s better to detect the user’s browser language setting and act on that. And, you can always also give language buttons.


Everything that Scott wrote above also is true for RWML stack. And I also agree with him about the disadvantage/annoyance of the automatic language detection.

In case of RWML, after the initial choice of a language, this choice is recorded in a cookie, so next time a viewer visits a site, same language is chosen for them. I imagine that Localizer stack uses some similar method.


right now I’ve gotten newsletter from joe workman with his new Agent Stack. As far as I see this on his demo page there is an option for Geo-Localization

1 Like

Yes, it does. But I am not using cookies :cookie:


I do some of my sites in two languages, and put a menu item to switch.

I HATE sites that automatically change the language to wherever I’m traveling. And even though I live and work in Bolivia, and write primarily Spanish, I prefer to research in English as there are more and better responses.

My TV has multiple languages, but every program defaults to where I am, dubbing the voices. Every time I have to go to options and turn it back to English for US sitcoms and Movies.

The idea of automatic sounds great to a programer, but in the real world it fails.

1 Like

Ok, thanks for the ideas here.

  1. How common is it for people to set their “browser preferred language” today?

  2. I would want to serve up a local language site for local visitors as the default, and an English version to everyone else. At least initially. Would the plugins listed require both versions to be downloaded and only one displayed, or would the only download the language specific files? Looking at Agent, I like the idea of keeping the amount of data to a minimum.

  3. This is for a pretty small site, no CMS at all. Will the CMS stack listed here still work, if the content is static?

  4. I agree that auto switching can be irritating, I’ve experienced that myself. How would I set a language switcher up in the menu? A button?

Thanks again for all the great help and suggestions. This place is a great resource.


1 Like

If not set, the browser preferred language id defined by the operating system language. You can override that in the browser settings.

That’s exactly how Localizer Stacks is designed.

Localizer Stack only downloads the language files needed for the chosen language.

I am working on a non-CMS version, where the different lets name it “language specific text blocks” are located inside the resources folder, and which could be edited there with a text editor.

Cheers, Jannis


Start with looking at your assumption that the approach should be IP switching. Why? Who is your audience ? What countries? Etc.

Ip based switching is terrible for anyone who travels an probably only an idea outside Europe or if people live far from a border. People in border regions and in Europe who speak multiple languages will hate sites that do this.

If your target audience for sure only speaks one language. Never travels to other language areas and does not live in Europe (with the exception of possibly England) you may find it a good solution.

I just started watching a show on Netflix on Germany over the weekend and traveled an hour home to holland and now I can’t watch it any more. That’s how awesome IP switching is.

The idea of whole site switching is bad as well when you have a decent amount of graphic content and users want to switch. It’s annoying to wait for reloads. Again, Your audience determined it, not your personal preference or what google does or your grandmother likes etc.

1 Like

Hi Willem,

as other people have already pointed out (and I’ve agreed with), I don’t want to strictly enforce the language/IP setting.

However, people here tend to be a touch negative to foreign business when they can choose local in many cases, which is why I would prefer to present local visitors with the site in the local lingo, and a slider/button to choose between it and English.

So for Dutch visitors, I would want the site to load in Dutch, but with the option of changing to English if so desired.

Hope this helps explain better.


1 Like

I use the Joe Workman stack to display content relevant to either UK or Australia, also to ensure that certain content is only visible to certain countries. It seems to work very well.