繁体   English   中英

将移动用户重定向到桌面版本

[英]Redirecting a mobile user to a desktop version

我有一个使用设备检测功能的Wordpress网站,它使用以下操作将在移动设备上浏览的用户重定向到特定页面:

<script>
if( /Android|webOS|iPhone|iPod|BlackBerry|IEMobile/i.test(navigator.userAgent) ) {
window.location = "176.32.230.17/domain.co.uk/m";
}
</script>

该代码当前位于domain.co.uk的主页模板上。 刚打开身体标签之后。 检测和重定向效果很好,但是,我需要在该移动页面上提供一个指向网站桌面版本的链接。 所以只是一个简单的链接:

<a href="http://176.32.230.17/domain.co.uk/?ref=desktop">Link back to desktop website</a>

这样做是因为它会将用户引导回domain.co.uk地址,因为检测/重定向代码的位置位于domain.co.uk的主页模板上,因此用户将被重定向回移动版本。 我怎样才能解决这个问题?

您需要某种方式来传达用户已经被重定向一次的事实。 如果您使用的是PHP,则可以使用GET变量进行条件重定向。 如果您仅使用Javascript,则可以使用Cookie。 HTML5也支持某种数据存储,但是我对此并不熟悉。

编辑:实际上,您可以将GET变量附加到地址上,甚至不使用PHP。 只需使用window.location.href获取地址,然后查看是否仅使用Javascript设置了变量。

EDIT2:注释中放入太多内容,所以让我将其放在此处。 链接应更改为:

<a href="http://176.32.230.17/domain.co.uk/?ref=desktop#redirected">Link back to desktop website</a>

重定向代码可以更改为:

<script>
if( /Android|webOS|iPhone|iPod|BlackBerry|IEMobile/i.test(navigator.userAgent) &&
        !window.location.href.contains("#redirected") ) {
    window.location = "176.32.230.17/domain.co.uk/m";
}
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM