2014-10-23 7 views
0

У меня есть веб-сайт, который доступен на 8 языках. Я хочу, чтобы текст, подобный кнопке, как You like this. ... и т. Д. Был в языке локали.как сменить facebook как кнопка текст язык

Я гугле много, единственное решение, кажется, чтобы изменить это js.src

js.src = "//connect.facebook.net/en_US/sdk.js"; 

в

js.src = "//connect.facebook.net/de_DE/sdk.js"; 

, если я хочу, немецкий текст. но не может ли он загружать его динамически? Должен ли я предоставить все 8 версий js.src?

+0

У вас есть несколько языков на одной странице и в одно и то же время? – Lix

+0

фактически «да». Я создаю один шаблон на всех языках. просто текст меняется. @Lix – doniyor

ответ

0

Таким образом, это код, который я использую на моем сайте Joomla:

<script>(function(d, s, id) { 
    var lang = "<?php echo JFactory::getLanguage()->getTag();?>"; 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) return; 
    js = d.createElement(s); js.id = id; 
    if (lang !="en-GB"){ 
    js.src = "//connect.facebook.net/de_DE/sdk.js#xfbml=1&version=v2.8"; 
    } else { 
    js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8"; 
    } 

    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk'));</script> 

я установить переменную языка и затем скрипт реагирует на языке, который установлен в то время. Вы можете легко применить ту же логику к своей ситуации. Я вытаскиваю переменную из php, поэтому язык перезагружается при перезагрузке страницы, но вы можете так же легко сделать это с помощью переменной js. Вероятно, существует более сложный способ сделать это с помощью регулярного выражения, но это работает. У меня есть только два языка, поэтому логика не сложна, поэтому регулярное выражение может быть лучшим решением для динамического изменения языковой части URL в зависимости от активного языка.

Смежные вопросы