2012-10-01 36 views
0

我们正在努力获取我们网站的移动版本。出于各种原因,我们正在通过用户代理检测来调查“相同的URL,不同的内容”结构。没有问题,我们很乐意根据UA设置设置cookie并使用此cookie来确定要使用的内容/ css/etc。桌面和移动网站,相同的URL,如何链接回到对方?

问题是,我们想要从移动页面提供返回到桌面版本的链接,反之亦然。我们不想仅链接到主页,而是只在相同的页面上,而在另一个环境中。

我们想使链接包含$ _GET参数

<a href="....html&mob=1">...</a> //mobile page, user wants desktop, AND 
<a href="....html&mob=2">...</a> //desptop page, user wants mobile 

然后在我们的前面加上我们会检查的$ _GET参数,如果找到,这取决于它的状态,来设置或取消我们的Cookie ,然后重定向到HTTP_REFERRER(与刚才相同的页面)。

问题是,有没有人知道这将如何影响搜索引擎优化/机器人?

是否有在同一网址上投放不同内容的最佳做法,并且有链接到其他版本。

任何输入将不胜感激。提前致谢!

更新 - 我们的检测中移动用户代码和他们选择

// First page load, redirect if mobile 
if(!isset($_SESSION['mobile'])){ 
    // SCRIPT SOURCED FROM: http://code.google.com/p/php-mobile-detect/ 
    include_once(INCL_PREP . "lib/Mobile_Detect.php"); 
    $detect = new Mobile_Detect(); 
    // if mobile device, but NOT tablet (they handle desktop versions just fine!) 
    if ($detect->isMobile() && !$detect->isTablet()) { 
    $_SESSION['mobile'] = 1; 
    $redirectURL= ...; // code removed for sake of space and relevancy 
    header("location:$redirectURL"); 
}else{ 
    $_SESSION['mobile'] = 2; 
} 
// Get the $_SESSION['mobile'] status by the $_GET parameter 
if($_GET['mobile'] == "on"){ 
    $_SESSION['mobile'] = 1; 
}else{ 
     $_SESSION['mobile'] = 2; 
} 

因此,移动版本有$ _GET获得参数,并使用该和$ _SESSION我们可以自动在页面加载重定向,而且他们还可以在移动版和桌面版之间切换而不会出现问题。

感谢输入的人。

+0

用户代理跟踪并不完美;你将不可避免地遇到问题。你应该看看响应式网页设计技术。 –

+0

>>由于各种原因,我们正在调查“相同的URL,不同的内容”结构<<响应式网页设计技术对我们的要求来说是一个糟糕的选择。不仅对于移动设备的网页“膨胀”来说这很可怕,我们需要为我们的移动用户显示不同的内容,因为“相同的URL,不同的内容”暗示着。但是,谢谢。 –

+0

是的,我读过。响应式网页设计当然不会膨胀,并且它可以根据屏幕分辨率渲染不同的内容。很不幸你愿意调查。祝你好运。 –

回答

2

'技术上'您没有使用“相同的URL” - 查询字符串变体实际上被搜索机器人视为不同的URL。

如果你想移动/桌面用户管理不同的网址,并要确保谷歌“看见”正确的版本,然后阅读下面的资源:https://developers.google.com/webmasters/smartphone-sites/details

一半时是如何解释请使用rel="alternate"rel="canonical"来描述您正在描述的场景。

+0

是的,你对不同的网址100%正确,不确定我在OP中说的是什么......对不起,我的坏:-s向右移动我们已经决定了您提供的链接中的第三个选项,不同的网址和不同的内容。感谢您输入Mick! –

相关问题