Nk-CS.Ru: Все для вашего портала uCoz
Авторизация

Свой быстрый перевод сайта на другой язык

Свой быстрый перевод сайта на другой язык Всем привет. многие хотят сделать сайт англоязычным но uCoz не предоставляет такой возможности, недавно в работе нашей студии понадобился подобный перевод, но переписывать сотни PHP страниц на одни и теже встречающиеся слова не было желания. Поэтому мы решили сделать на js перевод так как быстро и удобно!... Сам скрипт работает на Cookie для сохранения действий.

Возможности:
1. Перевод сайта на 2 языка.
2. Отображение включен или отключен тот или иной язык перевода!.
3. Своя база перевода слов.

Установка:
1. Добавим кнопку переключения языка:
Код
<div class="i-off options-language"></div>

2. Добавим CSS для нашей кнопки:
Код
.i-off {  
  background: url(/images/en.png);  
  width: 32px;  
  height: 24px;  
  margin-right: 30px;  
  cursor: pointer;  
  }  
  .i-on {  
  background: url(/images/ru.png);  
  width: 32px;  
  height: 24px;  
  margin-right: 30px;
}

3. Добавим Сookie + js скрипт:
Код
jQuery.cookie = function(name, value, options) {  
  if (typeof value != 'undefined') { // name and value given, set cookie  
  options = options || {};  
  if (value === null) {  
  value = '';  
  options.expires = -1;  
  }  
  var expires = '';  
  if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {  
  var date;  
  if (typeof options.expires == 'number') {  
  date = new Date();  
  date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));  
  } else {  
  date = options.expires;  
  }  
  expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE  
  }  
  // CAUTION: Needed to parenthesize options.path and options.domain  
  // in the following expressions, otherwise they evaluate to undefined  
  // in the packed version for some reason...  
  var path = options.path ? '; path=' + (options.path) : '';  
  var domain = options.domain ? '; domain=' + (options.domain) : '';  
  var secure = options.secure ? '; secure' : '';  
  document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');  
  } else { // only name given, get cookie  
  var cookieValue = null;  
  if (document.cookie && document.cookie != '') {  
  var cookies = document.cookie.split(';');  
  for (var i = 0; i < cookies.length; i++) {  
  var cookie = jQuery.trim(cookies[i]);  
  // Does this cookie string begin with the name we want?  
  if (cookie.substring(0, name.length + 1) == (name + '=')) {  
  cookieValue = decodeURIComponent(cookie.substring(name.length + 1));  
  break;  
  }  
  }  
  }  
  return cookieValue;  
  }  
  };  
  $(function () {  
  $('.i-off').live({ 'click': function() { $(this).removeClass('i-off').addClass('i-on'); } });  
  $('.i-on').live({ 'click': function() { $(this).removeClass('i-on').addClass('i-off'); } });  
  function mySookie() {  
  $('.options-language').click(function () {  
  location.reload();  
  if($.cookie('optLanguage') != 'false') {  
  $.cookie('optLanguage', 'false');  
  } else {  
  $.cookie('optLanguage', 'true');  
  }  
  });  
  };  
  mySookie();  
  if($.cookie('optLanguage') != 'false') {  
  $('.options-language').removeClass('i-on').addClass('i-off');  
  } else {  
  $('.options-language').removeClass('i-off').addClass('i-on');  
  myLang();  
  mySookie();  
  };  

  function myLang() {  
  var a = [0, 'Home', 'News', 'Advertise'];  
  var b = [0, 'Главная', 'Новости', 'рекламировать'];  
  $('#CenteFix').html(function(x, y)  
  { return a.reduce(function(cur, prev, i)  
  { return cur.replace(new RegExp(prev, 'g'), b[i]); }, y);  
  });  
  };

Разберем скрипт:
1. Находим в скрипте: $('#CenteFix').html(function(x, y) - Тут нам нужно указать атрибут элемента где нужен перевод в нашем случае весь наш сайт был обвернут в div с атрибутом #CenteFix.

2. Массив перевода:
var a = [0, 'Home', 'News', 'Advertise'];
var b = [0, 'Главная', 'Новости', 'рекламировать']; - Тут указываем свои слова перевода из родного в нужный язык!..

P.s Будьте осторожны в переводе слов, так как скрипт заменяет весь код HTML код страницы на ваши указанные слова перевода.

0.0
0 оценок
0.0
Дизайн:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
0.0
Функционал:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
0.0
Мобильность:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
0.0
Общая оценка:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Читайте также
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Авторизация
лучший сайт где можно скачать шаблоны для dle 11.3 бесплатно