天天看點

PageAdmin Cms網站建設教程:仿58同城站群系統實作不同地區Ip跳轉不同分站

多大型資訊平台,如58同城,百姓網等都會有全國地區分站,比如我廣州的,打開58同城會自動進入廣州分站。

PageAdmin Cms網站建設教程:仿58同城站群系統實作不同地區Ip跳轉不同分站

現在很多做網站的站長和網站建設公司都會采用pageadmin這類網站系統來建站,pageadmin是支援站群的,下面示範如何實作58同城的地區跳轉功能。

1、首先需要一個iP識别接口,這裡可以到阿裡雲去申請,我們也可以用淘寶的免費api接口,阿裡雲的接口傳回資訊格式如下。

{"code":0,"data":{"ip":"210.73.44.249","country":"中國","area":"","region":"廣東","city":"廣州","county":"XX","isp":"科技網","country_id":"CN","area_id":"","region_id":"440000","city_id":"440100","county_id":"xx","isp_id":"1000114"}}
           

下面我們通過ajax請求的方式來擷取到歸屬資訊實作跳轉,代碼如下:

<script type="text/javascript">
var clientIp = "@StringHelper.GetClientIP()";//調用pageadmin的内置方法擷取ip位址
var api="http://ip.taobao.com/service/getIpInfo.php";
$(function () {
    $.ajax({
        url: api,
    type: "GET",
    dataType: "json", //指定伺服器傳回的資料類型
    data: { ip: clientIp },
    success: function (ipData) {
    ipData = JSON.parse(ipData);
    var city = ipData.data.city;
    cityDomain(city) //調用城市判斷函數
    }
    });
});


//城市判斷函數
    function cityDomain(city) {
        var domain = "www.58.com"; //換成自己的域名
        switch (city) {
            case "廣州":
                domain = "guangzhou.58.com";
                break;
            case "北京":
                domain = "beijing.58.com";
                break;
            case "其他地區一一判斷":
                //更多
                break;
        }
        location.href = "domain";
}
</script>
           

域名跳轉這部分可以在pageadmin的背景建一個分類表來實作,這樣就可以實作背景控制,如下圖:

PageAdmin Cms網站建設教程:仿58同城站群系統實作不同地區Ip跳轉不同分站

添加一個自定義字段domain,這樣就可以通過背景來控制地區和域名的對應,以後如果有變動直接通過背景修改即可,我這裡添加了幾條示範資料,效果如下。

PageAdmin Cms網站建設教程:仿58同城站群系統實作不同地區Ip跳轉不同分站

通過點選添加和修改就可以實作地區和域名的背景控制,相比直接在模闆中寫死,是不是友善了很多

繼續閱讀