Нужно определить язык пользователя и загрузить переводчик Страница 2

Для заказа/предложений по работе с сайтом, дизайном, скриптами т.п.
flags, avtousta

Re: Нужно определить язык пользователя и загрузить переводчи

Mamedov Samir7 » » Сообщение:

Admin скрипт на компьютере работал отлично.. как я вам говорил, потом установил на сайт,
теперь первая загрузка страницу определяется с яндекс и переводится на Азербайджанский, кнопки выбор языка тоже работает отлично, меняет в head нужную ссылку, но почему то нет перевода..
посмотрите пожалуйставот сайт где надо проверит нужных слов для примера, Форум, Темы, Обновления, Ответы на странице они так выглядеть при переводе уже так Forum, Mövzular,Cavablar,Yenilənmə

почему так, на компьютере при тестовом режиме работает а на сервере нет,


Re: Нужно определить язык пользователя и загрузить переводчи

Admin » » Сообщение:

Mamedov Samir7 писал(а) › 17 мар 2016, 15:31:теперь первая загрузка страницу определяется с яндекс и переводится на Азербайджанский

Где этот скрипт?
В нем есть:

Код: Выделить всё Развернуть
$(document).ready(function()

?

Mamedov Samir7 писал(а) › 17 мар 2016, 15:31:но почему то нет перевода..

Потому что он срабатывает раньше, чем появляются слова: Форум, Темы, Обновления, Ответы .
Нужно либо сместить его ниже $BODY$, либо запускать по $(document).ready


Re: Нужно определить язык пользователя и загрузить переводчи

Mamedov Samir7 » » Сообщение:

Admin писал(а) › 17 мар 2016, 17:37:Где этот скрипт?

вот тот скрипт с функцией

Вчера как вам написал чтоб почему то не переводит. пока ждал от вас ответа чтоб вы заглянули..
на этом скрипте начал сделать немного функционал.. пока тестировал.. не сохраняя скрипт свет вырубился..
уже и почему то до утро не включили , в скрипте остался не закрытая скопка, из за этого наверно вы не смогли видеть скрипта.. теперь исправил, но это совсем другой функционал был, кроме этого не чего не добавил

script Код: Выделить всё Развернуть
$(document).ready(function() {
        ymaps.ready(function() {
      
            var country = ymaps.geolocation.country;
         var translat_lang_nam;
         var translat_lang_title;
         var translat_lang_help;
         var mini_lang_name;
         var city_flags;
            switch (country) {
    case 'Azerbaijan':
        translat_lang_nam = "Azərbaycan";
      translat_lang_title = "Sizin ölkə";
      mini_lang_name = "AZ";
      translat_lang_help = "Səhifə avtomatik olaraq Azərbaycan dilinə tərcümə edilib";
      city_flags = "flag_AZ";
        break;
      
          case 'America':
        translat_lang_nam = "Amerika";
      translat_lang_title = "Your country";
      mini_lang_name = "EN";
      translat_lang_help = "The page automatically translated into English Language";
      city_flags = "flag_EN";
        break;
      
                case 'Russia':
        translat_lang_nam = "Россия";
      translat_lang_title = "Ваша страна";
      mini_lang_name = "RU";
      translat_lang_help = "Страница автоматически переведено на Русский язык";
      city_flags = "flag_RU";
        break;
   
   
                   case 'Turkey':
        translat_lang_nam = "Türkiye";
      translat_lang_title = "Ülkeniz";
      mini_lang_name = "TR";
      translat_lang_help = "Sayfa otomatik olarak Türk dileine çevrildi";
      city_flags = "flag_TR";
        break;
         
                   case 'Uzbekistan':
        translat_lang_nam = "O'zbekiston";
      translat_lang_title = "Mamlaktingiz";
      mini_lang_name = "UZ";
      translat_lang_help = "Sahifa avtomatik ravishda o'zbek tiliga tarjima";
      city_flags = "flag_UZ";
        break;
      
                         case 'Ukraine':
        translat_lang_nam = "Україна";
      translat_lang_title = "Ваша країна";
      mini_lang_name = "UK";
      translat_lang_help = "Сторінка автоматично переведено на українську мову";
      city_flags = "flag_UK";
        break;
      
                               case 'Italy':
        translat_lang_nam = "Italia";
      translat_lang_title = "Il vostro paese";
      mini_lang_name = "IT";
      translat_lang_help = "La pagina tradotta automaticamente in italiano";
      city_flags = "flag_IT";
        break;
   
}
$('#lang').attr('title',''+translat_lang_title+' - ' +translat_lang_nam+'')
$('#language').attr('title',''+translat_lang_help+'')
$('#user_language').addClass('flag '+city_flags+'')
document.getElementById("lang").innerHTML = "" + mini_lang_name;
        });
    });

это функционал как видно чтоб, с какой страны заходит пользователь и ему тот язык в титле и флаг страны рядом имя страны, и укороченный имя страны.

но с утро проверяю перевод работает как надо :( , не понял что было....
ладно это все уже работает, остался немного, чтоб закончит полный функционал, этого переводчика
как здесь видите , сверху слева рядом слово AvtoUsta либо авто переводом АвтоМастер появляется укороченный код страны RU, и слева поиска селект выбор языка, тут флаг страны, имя страны, и при наведении мышкой должен появится на русском такой текст, Страница автоматически переведено на Русский язык на Азербайджанском все это работает, просьба такая, посмотрите пож... вы при входе на мой сайт то что я написал выше, появляется на вашем языке, флаг, титле,укороченная имя страны, и при выборе другой язык происходит перевод. я определение страны не смогу проверит из за того чтоб, не смогу с Азербайджана войти на сайт как из России или с другой страны, вы сами знаете чтоб, страны определяет Яндекс, а принудительно проверят не знаю как!
докончит полный функционал было проверит из другого страны, и еще при выборе из select option другого языка, на выпадающего меню в option рядом имя страны должен появится флаг тот страны , нужные классы поставил но почему то не появляется, либо оптион не принимает классы, либо я что то опят упустил, и при выборе имя другого страны в селект должен меняться флаг на тот страны тоже не меняется!
я вам очень благодарен из за того что помогли меня собрат такой переводчик,


Re: Нужно определить язык пользователя и загрузить переводчи

Admin » » Сообщение:

Mamedov Samir7 писал(а) › 18 мар 2016, 11:12:но с утро проверяю перевод работает как надо :( , не понял что было....

И все таки, лучше его установить ниже $BODY$, можно в глобальный блок нижний..

Mamedov Samir7 писал(а) › 18 мар 2016, 11:12:посмотрите пож... вы при входе на мой сайт то что я написал выше, появляется на вашем языке, флаг, титле,укороченная имя страны

Вот так у меня:

Страница автоматически переведено на Русский язык
Mamedov Samir7 писал(а) › 18 мар 2016, 11:12:на выпадающего меню в option рядом имя страны должен появится флаг тот страны , нужные классы поставил но почему то не появляется

Я тоже не наблюдаю.. так как:

Код: Выделить всё Развернуть
Изображение «http://avtousta.ucoz.com/img/flags/flags.png» не может быть показано, так как содержит ошибки.
Mamedov Samir7 писал(а) › 18 мар 2016, 11:12:при выборе имя другого страны в селект должен меняться флаг на тот страны тоже не меняется!

По тем же причинам, что и выше.


Re: Нужно определить язык пользователя и загрузить переводчи

Mamedov Samir7 » » Сообщение:

Admin писал(а) › 18 мар 2016, 11:30:Я тоже не наблюдаю.. так как:
КОД: ВЫДЕЛИТЬ ВСЁ РАЗВЕРНУТЬ
Изображение «http://avtousta.ucoz.com/img/flags/flags.png» не может быть показано, так как содержит ошибки.

а как сделать чтоб не было ошибки ...
таком же настройке показывается в селект класс, но оптион класс почему то не хочет,

и на картинке смотрю чтоб рядом AvtoUsta появляется ru, это правильно но сам слово AvtoUsta не переводится на русском, и еще пропал картинка страны, а у меня показывается мой флаг в селект


Re: Нужно определить язык пользователя и загрузить переводчи

Admin » » Сообщение:

Mamedov Samir7 писал(а) › 18 мар 2016, 12:32:а как сделать чтоб не было ошибки ..

Если это ваша картинка, то пережать в фотошопе в правильный формат. Если нет - перекачать заново оттуда, откуда вы ее взяли.

Mamedov Samir7 писал(а) › 18 мар 2016, 12:32:но сам слово AvtoUsta не переводится на русском, и еще пропал картинка страны, а у меня показывается мой флаг в селект

Пр флаги - битая картинка.
И про то, почему не переводит - тоже написал.

Mamedov Samir7 писал(а) › 18 мар 2016, 11:12:благодарен из за того что помогли меня собрат такой переводчик

Я не стал бы так говорить, так как скрипт оОчень сырой и многие моменты не только спорны, но и откровенно ошибочны.
Например:
1. Способ определения локали пользователя;
2. Метод создания языкового массива: country_language_az;
3. Метод создания списка user_language;
4. Ошибочная функция set_lang_dis();
5. Сомнительное по многократности использование ymaps.ready(function();
6. Сомнительный перебор элементов $('#user_language > option').each(function();
7. Неэффективный switch (country);
8. Дубликаты $(document).ready(function() и ymaps.ready(function();
9. По функции перевода - двойной перевод.

Так что, скрипт еще пилить и пилить..

Доступно только для зарегистрированных пользователей.


Re: Нужно определить язык пользователя и загрузить переводчи

Mamedov Samir7 » » Сообщение:

Admin писал(а) › 18 мар 2016, 13:56:Если это ваша картинка, то пережать в фотошопе в правильный формат

я скачал картинку с интернета и формат на том же сайте в этом формате png работает отлично..

Admin писал(а) › 18 мар 2016, 13:56:Если нет - перекачать заново оттуда, откуда вы ее взяли.

если оттуда скачать заново тоже будет такой формат png

если формат не правильный! почему картинка на select class выводится, а в option class нет?

Admin писал(а) › 18 мар 2016, 13:56:2. Метод создания языкового массива: country_language_az;

понял вас.. откуда не заходи первые в селект было слово Azerbaijan. эту исправил ...

Admin писал(а) › 18 мар 2016, 13:56:3. Метод создания списка user_language;
Admin писал(а) › 18 мар 2016, 13:56:4. Ошибочная функция set_lang_dis();

если этого имеете введу

script Код: Выделить всё Развернуть
$('#user_language').addClass('flag '+city_flags+'')

это даже не было нужно удалил и 'flag '+city_flags+'' поставил в select class так так нам надо чтоб при определение страну выводит код флага в css

если этого имеете введу

script Код: Выделить всё Развернуть
$("select#user_language option:selected").attr("disabled","disabled").siblings().removeAttr("disabled");
    $("select#user_language option:selected").attr("slected","selected").siblings().removeAttr("selected");

вроде тоже исправил ...

Admin писал(а) › 18 мар 2016, 13:56:5. Сомнительное использование ymaps.ready(function();

не понял... по подробнее можно..! почему сомнительное использование? что то опасно этот метод определение страну?

Admin писал(а) › 18 мар 2016, 13:56:6. Сомнительный перебор элементов $('#user_language > option').each(function();

да это просто для теста поставил не работает, удалял буду искать другого решение для вывода флаг в селект

Admin писал(а) › 18 мар 2016, 13:56:7. Неэффективный switch (country);

в каком смысле не эффективный.. ? ошибочно или есть другой вариант?

Admin писал(а) › 18 мар 2016, 13:56:8. Дубликаты $(document).ready(function() и ymaps.ready(function();

исправил сделал по одному

Admin писал(а) › 18 мар 2016, 13:56:9. По функции перевода - двойной перевод

по другому нужно много функции и по отделенности переводчиков от аз на ру от ру на аз от ен на ру и так далее..

Admin писал(а) › 18 мар 2016, 13:56:Могу допилить за 500 р

было бы возможности отправил бы не 500 руб даже 1000 руб

Добавлено спустя 22 минуты 58 секунд:
Re: Нужно определить язык пользователя и загрузить переводчик

Admin писал(а) › 18 мар 2016, 13:56:2. Метод создания языкового массива: country_language_az;

теперь у вас должен так Россия

такой вопрос, как я смогу войти на мой сайт с России или с другой страны находя в Азербайджане ?


Re: Нужно определить язык пользователя и загрузить переводчи

Admin » » Сообщение:

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:я скачал картинку с интернета и формат на том же сайте в этом формате png работает отлично..

Ну раз оно “работает отлично” почему не открывается? http://avtousta.ucoz.com/img/flags/flags.png

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:почему картинка на select class выводится, а в option class нет?

Без понятия - у меня ни там ни там не выводится - скриншот выше.

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:не понял... по подробнее можно..! почему сомнительное использование?

Потому что оно повторяется несколько раз. Тут скорее не сомнительное, а нерациональное, неэффективное, избыточное..

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:в каком смысле не эффективный.. ? ошибочно или есть другой вариант?

Нельзя сказать что ошибочный, но и правильным назвать тоже нельзя, так как избыточен и .. неэффективен.

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:исправил сделал по одному

Вы не так все понимаете.. Тут нужно не что-то конкретное исправлять, а изменить всю структуру скрипта, сделать ее более логичной.
Вот смотрите, вы создаете список в одной функции:

Код: Выделить всё Развернуть
new_tag=new_tag+'<select name="lang_and_flags" class="city_flags flag '+city_flags+'" id="user_language" onchange="set_lang(this.value)&set_lang_dis();">';
for(var key in country_language_az) { new_tag=new_tag+"<option class='city_flags flag "+city_flags+"' id='"+country_name+"' value='"+country_name+"'>"+country_language_az[key]+"</option>"; }

при чем, создаете через жопу (извините, но так и есть, я даже не понимаю зачем его нужно создавать скриптом) .. потом пытаетесь что-то в нем менять уже в другой функции:

Код: Выделить всё Развернуть
function set_lang_dis(){
$("select#user_language option:selected").attr('disabled', true).siblings().removeAttr("disabled");

и тоже через то же место.. потом снова дергаете его:

Код: Выделить всё Развернуть
$('#user_language > option').each(function(){
    $(this).addClass($(this).attr('value'));

.. и еще раз под конец:

Код: Выделить всё Развернуть
$('#user_language option:selected').addClass('flag '+city_flags+'')
document.getElementById("lang").innerHTML = "" + mini_lang_name;

...
Вам не кажется это “избыточным”? ...

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:по другому нужно много функции и по отделенности переводчиков от аз на ру от ру на аз от ен на ру и так далее..

Вы не правы.

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:было бы возможности отправил бы не 500 руб даже 1000 руб

так в чем дело? Я согласен на 1000) Что такое 1000 руб? - треть дневного заработка...
Взамен вы увидите, как решить проблему реально красиво)

Mamedov Samir7 писал(а) › 18 мар 2016, 16:28:как я смогу войти на мой сайт с России или с другой страны находя в Азербайджане ?

через прокси сервер или отредактировав функцию определения языка - вписав нужный для теста.


Re: Нужно определить язык пользователя и загрузить переводчи

Mamedov Samir7 » » Сообщение:

а в каком браузере это? у меня на хром и фиревокс показывается отлично ...
а в каком формате сохранит чтоб на все браузерах показывался ?

Добавлено спустя 1 час 2 минуты 2 секунды:
Re: Нужно определить язык пользователя и загрузить переводчик

Admin писал(а):о чем тут можно говорить..

да вы прав формат был такой http://avtousta.ucoz.com/img/flags/flags.webp
но почему то при нажатие ссылку на это картинки, не открывается а скатается !
а на оригинале открывается как картинка

оригинал

это переименованный

вот что пишет википедия про этого формата
как думаете остаться на этом формате или кодировать это формат на png

flags, avtousta

Re: Нужно определить язык пользователя и загрузить переводчи

Admin » » Сообщение:

Mamedov Samir7 писал(а) › 19 мар 2016, 11:41:а в каком браузере это? у меня на хром и фиревокс показывается отлично ...

Смотрю в мозилле.
Да, в хроме открываются. А в мозилле нет. Версия 44.0.1

Mamedov Samir7 писал(а) › 19 мар 2016, 11:41:а в каком формате сохранит чтоб на все браузерах показывался ?

пережать в фотошопе в правильный формат. Например в png8 или gif
Скачать, открыть и пересохранить.

Mamedov Samir7 писал(а) › 19 мар 2016, 11:41:как думаете остаться на этом формате или кодировать это формат на png

Я бы перевел в png - дабы избежать проблем с теми браузерами, что не понимают данный формат.


Re: Нужно определить язык пользователя и загрузить переводчи

Mamedov Samir7 » » Сообщение:

Admin Приветь. пока я решил как распаковать select options на ul li это получился отлично ..
потом начал написать переводы с Русского на Азербайджанский.. все было отлично .. но потом смотрю что при добавление темы или ответа, в панели BB-CODE есть надписи на Русском.. тоже начал переводит и вставить сюда после этого перевода перестал работать, панель BB-CODE, если уберу тут переводы начинает работать, в чем может проблема, оглянул не чего не нашел, какой то буква или текст в скрипте BB-CODE переводится и по этому не работает. панель BB-CODE, еще заметил в коде BB-CODE есть оригинал скрипт который переводит BB-CODE вот она


Re: Нужно определить язык пользователя и загрузить переводчи

Admin » » Сообщение:

Mamedov Samir7 писал(а) › 25 мар 2016, 15:53:Приветь. пока я решил как распаковать select options на ul li это получился отлично ..

Можно и так.

Mamedov Samir7 писал(а) › 25 мар 2016, 15:53:панель BB-CODE, если уберу тут переводы начинает работать, в чем может проблема

Сложно так, навскидку, точно указать причину. Но, думаю, вы заменяете какие-то элементы, а не только текст в них.
Предположительно, к элементам, наверняка, привязаны какие-то функции и своей заменой вы их убиваете.

А вообще, лучше смотреть консоль ошибок, а не гадать.

Mamedov Samir7 писал(а) › 25 мар 2016, 15:53:еще заметил в коде BB-CODE есть оригинал скрипт который переводит BB-CODE вот она

Да, этот скрипт отвечает за надписи на кнопках.
Думаю, что лучше использовать этот метод - создать свой файл, перевести его и инициировать.

ps

Mamedov Samir7 писал(а) › 25 мар 2016, 15:53:пока я решил как распаковать select options на ul li это получился отлично

Я бы, сначала довел бы до ума саму функцию перевода, а потом бы уже занимался оформительскими работами.


Re: Нужно определить язык пользователя и загрузить переводчи

Mamedov Samir7 » » Сообщение:

Admin писал(а) › 25 мар 2016, 16:11:Думаю, что лучше использовать этот метод - создать свой файл, перевести его и инициировать

Да я же не знаю о скриптах.. теперь начать такой метод сделать.. если знал бы это лучше чем который собрал, тогда соберу теперь такой, тут есть но, это вариант я смотрю переводит только меню, а если пост по другом языке, это же не будет переводит...

Admin писал(а) › 25 мар 2016, 16:11:Я бы, сначала довел бы до ума саму функцию перевода, а потом бы уже занимался оформительскими работами.

вы имеете введу чтоб сначала сделать скрипты для перевода, с одного я зыка на другой, и обратно, потом сделать меню для выбора языка,

для примера на странице сколько слов есть сделал перевод, с Русского на Азербайджанский, ну тут проблем который ранее написал не которые скрипты перестал работать ,
скажете что игнорировать перевод скрипта! но на страницах есть скрипты который есть в них слово который их тоже надо переводит, для примера в Форуме подписаться на форум, отписаться от форума.

Есть еще такой перевод от Яндекса Api Key

довел до сюда далее не знаю что делать и как будет выглядит,

script Код: Выделить всё Развернуть
 <script>
 var url = 'https://translate.yandex.net/api/v1.5/tr.json/getLangs?key=trnsl.1.1.20160325T130025Z.a7384fd1c9198dd9.a93fe8c8077b1400a27f437787b11865ab13109a&ui=az';
$.getJSON(url, function(data) {
 var items = ["az"];
 $.each( data, function( key, val ) {
 items.push( "<li id='" + key + "'>" + val + "</li>" );
 });
 
 $( "<ul/>", {
 "class": "my-new-list",
 html: items.join( "" )
 }).appendTo( "div#test_api" );
 
 
 
});
 
 </script>
html Код: Выделить всё Развернуть
<div id="test_api"></div>

просто на выдаче выдает вес кодовых имена страны боле не чего...

как вы думаете, какой вариант лучшее свой перевод или, от Яндекса.. ?


Re: Нужно определить язык пользователя и загрузить переводчи

Admin » » Сообщение:

Mamedov Samir7 писал(а) › 27 мар 2016, 11:50:если знал бы это лучше чем который собрал, тогда соберу теперь такой

Вы не поняли.
Этот метод подходит только для редактора, а не для всего сайта в целом.
По этому, редактор лучше переводить встроенными средствами. А сайт - как обычно.

Mamedov Samir7 писал(а) › 27 мар 2016, 11:50:вы имеете введу чтоб сначала сделать скрипты для перевода, с одного я зыка на другой, и обратно, потом сделать меню для выбора языка

Я имею в виду, что сначала нужно сделать нормальный функционал, а потом уже заниматься его красивым оформлением.

Mamedov Samir7 писал(а) › 27 мар 2016, 11:50:как вы думаете, какой вариант лучшее свой перевод или, от Яндекса.. ?

Я не знаю.
Проще попробовать и посмотреть.
И вопрос стоит не так: «какой лучше» - лучше и так понятно, что свой - а «как проще».


Пред.След.



Похожие темыКомментарии ПросмотрыПоследнее сообщение
0621Открытие профиля пользователя в нов...
Сообщение от: Admin
0861Ссылка на посты и темы текущего пол...
Сообщение от: Admin
1598Re: Ссылка на материал на странице ...
Сообщение от: Герук Юра
21546Re: Закладки пользователя для сайта...
Сообщение от: Admin
02107Добавляем обработку условий по ID г...
Сообщение от: Admin