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


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

554
9.2 из 10
Проголосовало: 11




  • Скачать с сервера
  • Скачать
  • Смотреть демо


Всем привет. многие хотят сделать сайт англоязычным но 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 код страницы на ваши указанные слова перевода.
Автор публикации: Загрузка
Загрузка
Marishka, это его n материал
Источник: http://www.mybeststudio.ru/
  • Всего комментариев: 1

k43
0
k43 написал: Написано 30 мая 2016 в 10:21
Комментарий №1
Довольна таки не плохой скрипт

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 24
Скрипты и модификации для Ucoz 2101
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 429
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
Поставил ваш код он начинает считать от 0 до 100 и останавливаеться. я думал он будет в случайном порядке показывать цыфры
как поставить свою ссылку и логотип
  • Сатурн-1 написал:
  • Похвально.
  • Winston888 написал:
  • Я не говорил что делаю только скрипты. Я делаю шаблоны, скрипты, адаптации с разных движков под ucoz и на оборот + я ещё и сам рисую. В данный момент занимаюсь дизайном для webo4ka сам рисую сам верстаю.
  • Сатурн-1 написал:
  • Заметь, мы делаем почти одну и ту же работу.
    Ты - скрипты, я -шаблон. И каждый делает это бесплатно, НО
    ты делаешь скрипты без шаблона, я делаю шаблон без скриптов (не считая основных).
    Я тоже могу сказать что твои скрипты не идеальны, но не буду т.к. даже не знаю какие из всех существующих твои.
    Поэтому ты не сравнивай скрипты и шаблоны да еще и на Ucoz'e, мы же не на хакатоне каком нибудь.
    Последние темы
    Опрос
    403
    А
    Р
    Оцените новый дизай:)
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 6
    Гостей: 5
    Пользователей: 1
    0
    Сегодня были
    Топ пользователей: