谷歌翻译根据国家/地区?

时间:2013-08-01 13:01:44

标签: php javascript google-translate

我正在使用Google Translator代码翻译语言网站。以下是我的代码......

 <div id="google_translate_element" style="padding-left:347px;"></div><script>
                        function googleTranslateElementInit() {
                            new google.translate.TranslateElement({
                                pageLanguage: 'fr'
                            }, 'google_translate_element');
                        }
                    </script><script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>

它工作正常。但我想根据国家使用它。当在法国开设网站时它将被设置为法语,在印度它将是印地语等等......

如何使用这个?或者还有其他方法可以在php中实现这种任务。

我想如果我以某种方式获得国家语言,那么我会在 pageLanguage 中传递它。但是当我通过&#34; fr&#34;它没有改为法语。还有如何使用主机名获取国家代码,语言。

2 个答案:

答案 0 :(得分:0)

这应该可以帮助你,maxmind geolocation API

  <script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>
    <script type="text/javascript">var code = geoip_country_code();</script>
    <div id="google_translate_element" style="padding-left:347px;">
    </div>
                            <script type="text/javascript">
                            function googleTranslateElementInit() {
                                new google.translate.TranslateElement({
                                    pageLanguage: code
                                }, 'google_translate_element');

                            }
                        </script><script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit">

答案 1 :(得分:0)

您还可以查询支持json&amp ;;的任何geoip服务。然后根据country_code设置翻译语言 - 您可能需要在某些例外情况下编码,例如澳大利亚的“au”,需要默认为en - 或者您可以将任何未知的翻译语言默认为“en”等。

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<div id="google_translate_element" style="padding-left:347px;"></div><script>
    function googleTranslateElementInit() {

        $.getJSON("http://justmyip.org/api",function(result){

            console.dir(result);
            country_code = result.geo.country_code.toLowerCase();

            new google.translate.TranslateElement({
                pageLanguage: country_code
            }, 'google_translate_element');

        });
    }

</script><script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>