Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Замена языка в зависимости от версии сайта (https://javascript.ru/forum/misc/69722-zamena-yazyka-v-zavisimosti-ot-versii-sajjta.html)

usmdamir 14.07.2017 14:16

Замена языка в зависимости от версии сайта
 
Добрый день.
есть сайт fleurfun.ru
на сайте 2 языка.
если в английской версии перейти в корзину, будет надпись "Корзина пуста..."

текст прописан в JS
как его менять в зависимости от языка?

.hide();$('.basket-items')
.html(var '<h3> Корзина пуста... </h3>')
.css({"padding":"20px 25px 20px 11px","text-align":"center"});}


вот кусок кода из корзины.
Спасибо!

laimas 14.07.2017 14:22

Цитата:

Сообщение от usmdamir
как его менять в зависимости от языка?

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

usmdamir 14.07.2017 14:32

Цитата:

Сообщение от laimas (Сообщение 458503)
На многоязычных сайтах обычно локализуется все, включая и мелкие надписи интерфейса, а тем более текст непосредственно в сценариях не пишут, в них переменные, которые есть у каждой локализации, источник которой и выбирается при смене языка.

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

laimas 14.07.2017 14:42

Цитата:

Сообщение от usmdamir
там на twig сделано много чего, весь текст или в бд или в шаблоне, так вот я в шаблоне через переменные поменял

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

Хотя если хотите геморроя, на здоровье:

.html(var '<h3>'+['Корзина пуста', 'Your cart is empty'][0 или 1 в зависимости от языка]+'...</h3>')


Или же не массив, а объект и обращаться по признаку текущего ключа как свойству этого объекта, например 'ru' и 'en', ну или как у вас там бог его знает.

usmdamir 14.07.2017 21:32

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


Часовой пояс GMT +3, время: 04:09.