以下は、場所に基づいてユーザーを Web サイトに送信するリンクを編集するためにうまく機能している私のコードですが、このコードを 2 つの方法で拡張したいと思います。
$(window).load(function () {
$.getJSON('http://api.wipmania.com/jsonp?callback=?', function (data) {
var country = data.address.country;
var urls = {
'Australia': 'www.website.com.au',
'New Zealand': 'www.website.co.nz'
}
var locstring = "/contact_us.html";
var locstring2 = "/about_us.html";
var cchUrl = 'www.website.com';
if(urls[country]) {
cchUrl = urls[country];
}
//alert(cchUrl);
$("#global").attr('href', 'http://' + cchUrl + locstring);
$("#global2").attr('href', 'http://' + cchUrl + locstring2);
});
});
<a href="http://www.website.com/contact_us.html" id="global" target="_blank">Contact Us</a>
<a href="http://www.website.com/about_us.html" id="global2" target="_blank">About Us</a>
ご覧のとおり、ユーザーを 2 つの異なる場所に送信するために 2 つの変数 (locstring、locstring2) と 2 つの ID (global、global2) をセットアップする必要がありました。id global を使用してドメインを変更することはできますが、変更はできません。ドメインの後にどのパスが来るかは関係ありません。www.thiswillchange.com/thiswontchange は、リンクごとに複数の ID と変数を設定するのではなく、1 つの ID を使用してコードを単純化したいと考えています。
別のプロジェクトとして、このコードを (ポイント 1 からの変更を使用して) 使用して「オンページ ロード」を作成できます。たとえば、ユーザーがページ www.website.co.nz/contact_us.html にアクセスすると彼らがオーストラリア出身であることを検出し、www.website.com.au/contact_us.html サイトに送信したり、その逆に送信したり、まったく異なるアプローチが必要になる場合があります。
将来、サイトを追加するにつれて、リストに国を追加する可能性があることを覚えておいてください.
編集:リンクが国際的なスラッシュページのテキストにある場合は、もう少し詳しく説明する必要があるかもしれません。メニューはありません。グローバルリダイレクトを使用してリンクドメインを変更し、ユーザーを正しいWebサイトに送信してから、ページへのパス。