通过清心醉

Ecshop-二维码分享mobile和电脑端同步

由于Ecshop的mobile端使用了MVC的分层,而二维码的扫描生成的时候是根据电脑端的产品ID进行截取,然后转化为mobile端的URL。

比如我有个产品,产品的电脑端URL为127.0.0.1/goods.php?id=100;

作者根据产品的ID,重写为mobile的地址:

$id=$_GET[‘id’];
if(isset($id)&&!empty($id))
{
if(is_numeric($id))
{
$url=”http://127.0.0.1/mobile/index.php?m=default&c=goods&a=index&id=”.$id;
}
}

这样就有个小小的问题,因为Ecshop不是使用自适应(如果是MAGENTO,根据URL就自动跳转合适的分辨率)。

如果用户电脑端访问,那就看的很难看了!

从URL里可以看出使用goods控制器的index方法

我们可以在方法里这么写

$id=$_GET[‘id’];
if(isset($id)&&!empty($id))
{
if(is_numeric($id))
{
$ua = strtolower($_SERVER[‘HTTP_USER_AGENT’]);
$uachar = “/(nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|mobile)/i”;
if(($ua == ” || preg_match($uachar, $ua))&& !strpos(strtolower($_SERVER[‘REQUEST_URI’]),’wap’))
{

}
else
{
$url=”http://127.00.1/goods.php?id=”.$id;
echo “<script>setTimeout(\”this.location=’$url’\”,1);</script>”;
}
}
}

 

 

关于作者

清心醉 administrator

发表评论

请输入验证码: