1

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

 <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>

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

这个怎么用???或者有没有其他方法可以在 php.ini 中实现这种任务。

我想如果我以某种方式获得国家语言,那么我会在pageLanguage中传递它。但是当我传递“fr”时,它不会变为法语。还有如何获取国家代码,使用主机名的语言。

4

2 回答 2

0

这应该可以帮助你,maxmind 地理定位 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">

于 2013-08-01T13:22:30.233 回答
0

您还可以查询任何支持 json 的 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>
于 2013-08-22T11:36:39.130 回答