ecshop如何在网站头部显示当前城市

首先,在/includes/lib_main.php中,找到代码:function assign_template($ctype = '', $catlist = array())   ,在方法中添加代码:

$smarty->assign('location_city',      get_location_city());   并在文件末尾添加如下方法:

function get_location_city(){  
          $loc_ip=real_ip();
$loc_ip138Addr = "http://whois.pconline.com.cn/ipJson.jsp?callback=testJson&ip=".$loc_ip;  //一个桶过ip获取当前所在地区的接口
           $loc_contents = file_get_contents($loc_ip138Addr);  
           $loc_intStart = strpos($loc_contents,"new Array(")+10;  
           $loc_intEnd = strpos($loc_contents,");");  
                        
           $loc_Info = substr($loc_contents,$loc_intStart,$loc_intEnd-$loc_intStart);  
           $loc_Info = str_replace("\"","",$loc_Info);  
             
           $loc_place = explode(",",$loc_Info);  
 list($loc_IP,$loc_Country,$loc_Province,$loc_City,$loc_Net) = $loc_place; 
 
 $loc_num=strpos($loc_City,":");
 $loc_area=substr($loc_City,$loc_num+1);
 $loc_area = ecs_iconv('GBK', 'UTF8', $loc_area);
 return $loc_area;
        }

然后在/themes/default/library/page_header.lbi中,随便找个地方写入代码:{$location_city},便可在头部显示当前所在城市,显示位置可在css中调试。

案例结果如下图:


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值