1. 树荣社区首页
  2. 技术教程
  3. 网站相关

WordPress根据浏览器语言自动跳转网址的方法

WordPress根据浏览器语言自动跳转网址的方法

电影观看链接:https://shurongshequ.com/vod/297056.html
请关注_微信公众号:树荣云播 回复名字获取地址,真实免费不忽悠无套路播

我们在使用 wordpress 搭建外贸站的公司都会做多个语言的网站,例如英文和中文。同时有些外贸站站长不希望自己的网站被国内用户访问,想要国内用户跳转到不同的网址,我们可以利用浏览器语言来判断用户环境,然后自动跳转到不同的网址上面,具体方法如下。

在你的网站主题头部文件(header.php)里面插入下面的代码:

  1. <?php
  2. // 定义变量 lc
  3. $lc = "";
  4. // 检查是否已经设置过 HTTP头Accept-Language信息变量
  5. if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
  6. $lc = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
  7. // 这里截取语言编码前两位来判断,如果是中文,转向百度
  8. if($lc == "zh"){
  9. header("location: https://www.baidu.com");
  10. exit();
  11. }
  12. ?>

考虑到很多是新手朋友,不会修改代码,所以建议安装一个 Code Snippets 插件,安装后启用插件,编辑 Example JavaScript snippet 这个片段,把上面的代码插入到/* write your JavaScript code here */的下方。
WordPress根据浏览器语言自动跳转网址的方法-树荣社区然后保存就可以激活启用代码了。

上面的代码中,你可以添加更多的语言,例如巴西、法语、葡萄牙语,然后对应跳转到不同的网址,多种语言跳转代码如下:

  1. <?php
  2. $lc = "";
  3. if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
  4. $lc = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
  5. if($lc == "pt"){
  6. header("location: https://blog.naibabiji.com/");
  7. }
  8. else if($lc == "fr"){
  9. header("location: https://blog.naibabiji.com/skill/language-redirection.HTML");
  10. exit();
  11. }
  12. ?>

以上方法参考料神文章,下面是常见的浏览器语言代码。

af南非公用荷兰语sq阿尔巴尼亚语
ar-sa阿拉伯语(沙特阿拉伯)ar-iq阿拉伯语(伊拉克)
ar-eg阿拉伯语(埃及)ar-ly阿拉伯文(利比亚)
ar-dz阿拉伯文(阿尔及利亚)ar-ma阿拉伯语(摩洛哥)
ar-tn阿拉伯语(突尼斯)ar-om阿拉伯文(阿曼)
ar-ye阿拉伯文(也门)ar-sy阿拉伯文(叙利亚)
ar-jo阿拉伯文(约旦)ar-lb阿拉伯语(黎巴嫩)
ar-kw阿拉伯文(科威特)ar-ae阿拉伯语(阿联酋)
ar-bh阿拉伯语(巴林)ar-qa阿拉伯文(卡塔尔)
eu巴斯克语bg保加利亚语
be白俄罗斯语ca加泰罗尼亚语
zh-tw中文(台湾)zh-cn中文(中华人民共和国)
zh-hk中文(香港特区)zh-sg中文(新加坡)
hr克罗地亚语cs捷克语
da丹麦语nl荷兰语(标准)
nl-be荷兰语(比利时)en英语
en-us英语(美国)en-gb英语(英国)
en-au英语(澳大利亚)en-ca英语(加拿大)
en-nz英语(新西兰)en-ie英国(爱尔兰)
en-za英语(南非)en-jm英语(牙买加)
en英语(加勒比海)en-bz英语(伯利兹)
en-tt英语(特立尼达和多巴哥)et爱沙尼亚语
fo法罗语fa波斯语
fi芬兰语fr法语(标准)
fr-be法语(比利时)fr-ca法语(加拿大)
fr-ch法语(瑞士)fr-lu法语(卢森堡)
gd盖尔语(苏格兰)ga爱尔兰语
de德语(标准)de-ch德语(瑞士)
de-at德语(奥地利)de-lu德语(卢森堡)
de-li德语(列支敦士登)el希腊
he希伯来语hi印地文
hu匈牙利语is冰岛语
id印度尼西亚语it意大利语(标准)
it-ch意大利语(瑞士)ja日语
ko韩语ko韩文(韓文)
lv拉脱维亚语lt立陶宛语
mk马其顿语(前南马其顿)ms马来西亚语
mt马耳他语no挪威文(巴克摩)
no挪威文(耐诺斯克)pl波兰语
pt-br葡萄牙语(巴西)pt葡萄牙语(葡萄牙)
rm里托罗曼斯文ro罗马尼亚语
ro-mo罗马尼亚语(摩尔多瓦共和国)ru俄语
ru-mo俄罗斯(摩尔多瓦共和国)sz萨米语(拉普语)
sr塞尔维亚语(西里尔文)sr塞尔维亚语(拉丁)
sk斯洛伐克语sl斯洛文尼亚语
sb索布语es西班牙语(西班牙)
es-mx西班牙语(墨西哥)es-gt西班牙语(危地马拉)
es-cr西班牙语(哥​​斯达黎加)es-pa西班牙语(巴拿马)
es-do西班牙文(多米尼加共和国)es-ve西班牙语(委内瑞拉)
es-co西班牙语(哥​​伦比亚)es-pe西班牙语(秘鲁)
es-ar西班牙语(阿根廷)es-ec西班牙语(厄瓜多尔)
es-cl西班牙语(智利)es-uy西班牙语(乌拉圭)
es-py西班牙语(巴拉圭)es-bo西班牙语(玻利维亚)
es-sv西班牙语(萨尔瓦多)es-hn西班牙语(洪都拉斯)
es-ni西班牙语(尼加拉瓜)es-pr西班牙语(波多黎各)
sx苏图语sv瑞典语
sv-fi瑞典语(芬兰)th泰国语
ts特松加语tn茨瓦纳语
tr土耳其语uk乌克兰语
ur乌尔都语ve文达语
vi越南语xh科萨语
ji意第绪语zu祖鲁语

多个语言判断是使用的 PHP – if…elseif….else 语句

  1. if (条件)
  2. {
  3.  if 条件成立时执行的代码;
  4. }
  5. elseif (条件)
  6. {
  7.  elseif 条件成立时执行的代码;
  8. }
  9. else
  10. {
  11.  条件不成立时执行的代码;
  12. }

除了上面的方法外,还可以插入下面这个代码,同样也可以实现不同语言的跳转。

  1. <?php
  2. $lan = substr($HTTP_ACCEPT_LANGUAGE,0,5);
  3. if ($lan == "zh-cn")
  4. print("<meta http-equiv='refresh' content = '0;URL = gb/index.htm'>");
  5. else
  6. print("<meta http-equiv='refresh' content = '0;URL = eng/index.htm'>");

而如果你是使用的一些翻译插件做的多语言网站,通常插件设置里面可以直接开启跳转功能。除了修改代码外,也可以通过域名解析,直接使用 ip 地址定位来直接跳转,一些高级点的 DNS 服务商都支持这个功能。

原创文章,作者:mrpyk,如若转载,请注明出处:https://www.shurongshequ.com/2086.html

本站提供的所有内容,都来自网络,版权争议与本站无关,侵删请致信E-mail:mrpyk123@qq.com

发表评论

登录后才能评论
WordPress根据浏览器语言自动跳转网址的方法