Автор! Для приличия следует указывать ветку (EVO-REVO), ибо каждая по сути уже давно абсолютно разные двиганы...
Мой путь для варианта, когда каждый язык на своем поддомене (site.ru/en.site.ru/de.site.ru/....) :
1. Ставим любой пакет определения ip, мне нравится этот
sypexgeo.net
2. Определили ip - редиректим, если надо, на языковой поддомен
3. В чанках-вышиванках пишем условия, отталкиваясь от реквеста.
ВСЁ!
Ну и не забыть на хостинге адресовать все поддомены на основной домен, не все хостинги одинаково адекватны в этом плане)))
И не понадобятся никакие ни куки, ни макуки...