1

我有一个使用 Expression Engine CMS 构建的网站,它已经运行了 2 年。我刚刚构建了一个静态移动站点(基于 html),我们在主页上添加了一个重定向脚本,它也可以正常工作。因此,如果移动用户尝试访问主页,用户会被正确地重定向到移动站点——这里没有问题。

问题是我们在 facebook、google adwords 和其他来源中使用网站中的谨慎页面,因此我们需要重定向不仅适用于主页,还适用于我们引导用户访问的大约 10 个其他页面。

EE 允许编辑模板页面,我已经为 about-us 之类的页面修改了 EE 模板,这些页面是来自单个 EE 类别的单个页面,这也可以正常工作。但是在具有多个谨慎页面的 EE 类别的情况下,我遇到了重定向问题。在这种情况下,EE 模板中只有一个页面来放置重定向脚本,因此移动设备将始终被重定向到类别中的同一页面,而不管实际选择了哪个页面。

我们可以使用 htacess 重定向以某种方式解决这个问题吗?它需要查看被调用的页面并重定向到特定的移动页面吗?是否有 php 或其他脚本选项来解决此问题。

目标是在我们只能在 EE 中的类别级别添加重定向脚本的情况下,我们需要将移动设备定向到特定页面。

谢谢。

4

1 回答 1

0
function getClientOS()
    {
        $user_agent = $_SERVER['HTTP_USER_AGENT'];

        $os_platform = "Unknown OS Platform";

        $os_array = array (
            '/windows nt 6.2/i' => 'Windows 8',
            '/windows nt 6.1/i' => 'Windows 7',
            '/windows nt 6.0/i' => 'Windows Vista',
            '/windows nt 5.2/i' => 'Windows Server 2003/XP x64',
            '/windows nt 5.1/i' => 'Windows XP',
            '/windows xp/i' => 'Windows XP',
            '/windows nt 5.0/i' => 'Windows 2000',
            '/windows me/i' => 'Windows ME',
            '/win98/i' => 'Windows 98',
            '/win95/i' => 'Windows 95',
            '/win16/i' => 'Windows 3.11',
            '/macintosh|mac os x/i' => 'Mac OS X',
            '/mac_powerpc/i' => 'Mac OS 9',
            '/linux/i' => 'Linux',
            '/ubuntu/i' => 'Ubuntu',
            '/iphone/i' => 'iPhone',
            '/ipod/i' => 'iPod',
            '/ipad/i' => 'iPad',
            '/android/i' => 'Android',
            '/blackberry/i' => 'BlackBerry',
            '/webos/i' => 'Mobile'
        );

此函数将返回您的客户端正在使用的操作系统的值(桌面/移动),您可以在页面顶部使用此函数并重定向到您为移动设备创建的特定页面,反之亦然。希望这可以帮助。

于 2013-07-05T05:21:27.270 回答