多くの
WordPressを使用して外国貿易向け独立サイトを構築している企業は、例えば英語と中国語など、複数言語のサイトを作成しています。同時に、一部の外国貿易向けサイトの管理者は、自社のサイトが国内ユーザーにアクセスされることを望まず、国内ユーザーを別のURLにリダイレクトさせたいと考えています。ブラウザの言語を利用してユーザー環境を判断し、自動的に異なるURLにリダイレクトすることができます。具体的な方法は以下の通りです: あなたのサイトテーマのヘッダーファイル(header.php)に以下のコードを挿入します。
<?php
// 定义变量 lc
$lc = "";
// 检查是否已经设置过 HTTP头Accept-Language信息变量
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
$lc = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
// 这里截取语言编码前两位来判断,如果是中文,转向百度
if($lc == "zh"){
header("location: https://www.baidu.com");
exit();
}
?>多くの方が初心者で、コードを編集する方法がわからないことを考慮し、
Code Snippetsプラグインをインストールすることをお勧めします。インストール後、プラグインを有効化し、「Example JavaScript snippet」というスニペットを編集し、上記のコードを「/* write your JavaScript code here */」の下に挿入します。

その後、保存すればコードが有効化されます。上記のコードでは、ブラジル語、フランス語、ポルトガル語など、さらに多くの言語を追加し、それぞれ異なるURLにリダイレクトさせることができます。複数言語のリダイレクトコードは以下の通りです:
<?php
$lc = "";
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
$lc = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
if($lc == "pt"){
header("location: https://blog.naibabiji.com/");
}
else if($lc == "fr"){
header("location: https://blog.naibabiji.com/skill/language-redirection.html");
exit();
}
?>上記の方法は
料神記事、以下は一般的なブラウザ言語コードです。
| 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文を使用しています
if (条件)
{
if 条件成立时执行的代码;
}
elseif (条件)
{
elseif 条件成立时执行的代码;
}
else
{
条件不成立时执行的代码;
}上記の方法以外にも、以下のコードを挿入することで、同様に異なる言語へのリダイレクトを実現できます。
<?php
$lan = substr( $HTTP_ACCEPT_LANGUAGE,0,5);
if ($lan == "zh-cn")
print("<meta http-equiv='refresh' content = '0;URL = gb/index.htm'>");
else
print("<meta http-equiv='refresh' content = '0;URL = eng/index.htm'>");また、翻訳プラグインを使用して多言語サイトを構築している場合、通常、プラグインの設定内で直接リダイレクト機能を有効にできます。コードを修正する以外にも、DNSレコードを設定し、IPアドレスによる位置情報を使用して直接リダイレクトする方法があり、一部の高度なDNSプロバイダーはこの機能をサポートしています。
以前に書いた関連記事:
コメントは終了しました
この記事のコメント機能は終了しています。ご質問がある場合は、他の方法でお問い合わせください。