Код для вывода контента по странам

Рейтинг: 0Ответов: 1Опубликовано: 08.11.2014

Нужно вывести определенный контент для определенных стран. Нашел на этом форуме такой код:

<html>

<head>

  <title>Test GeoIP</title>

  <script type="text/javascript" src="http://j.maxmind.com/app/country.js"></script>

  <style type="text/css">

    .geoip { display: none; border: 1px solid #036; padding: 10px; margin: 10px; }

    p { font-size: 0.8em; text-align: center; }

  </style>

  <script type="text/javascript">

    function init() {

      var id = geoip_country_code() == 'RU' ? 'country-ru' : 'country-other';

      document.getElementById(id).style.display = 'block';

    }

  </script>

</head>

<body>

  <div class="geoip" id="country-ru">

    <h1>Блок для пользователей из России</h1>

  </div>

  <div class="geoip" id="country-other">

    <h1>Блок для остальных пользователей</h1>

  </div>

</body>

</html>

Код выводит для пользователей из России текст "Блок для пользователей из России", а для остальных стран - "Блок для остальных пользователей".

Как мне сделать, чтобы он вывел текст не только для России, а, к примеру, и для Белоруссии такой текст "Блок для пользователей из Белоруссии".

Я ничего не понимаю в JS, так что если кто-то может помочь, то пишите, пожалуйста, уже готовый вариант или хотя бы понятно. Большое спасибо.

Ответы

▲ 1

Изменение функции init():

function init() {
    var id, country = geoip_country_code();
    switch (country) {
      case 'RU':
         id =  'country-ru';
         break;
      case 'BY':
         id =  'country-by';
         break;
      default:
         id =  'country-other';
    }
    document.getElementById(id).style.display = 'block';
}

Вставка в html, куда нужно:

<div class="geoip" id="country-by>
   <h1>Блок для пользователей из Белоруссии</h1>
</div>

По идее должно работать.

UPD. Немного оптимизировал JS, можно добавлять и другие страны также.