检查用户是否使用移动设备进行浏览

时间:2014-07-01 07:03:53

标签: php wordpress mobile

我正在构建一个关于wordpress的网站,我正在使用支持桌面和移动设备的主题。因此,网站会根据用户使用的内容进行更改。无论如何,我试图根据我到目前为止搜索的内容,确定用户在浏览网站时是否使用手机,

echo $_SERVER['HTTP_USER_AGENT'];

这决定了我不确定的事情的信息。当我打开我的主题文件的header.php时。我确实试图删除这些行,并在移动设备上浏览网站,该网站没有显示为移动设备,它就像在桌面上看起来像一个全视图网站,这就是我尝试工作的输出。

 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />

现在的问题是如何确定用户是否在移动设备上?对此有何想法?

3 个答案:

答案 0 :(得分:2)

Wordpress使用wp_is_mobile功能检查移动设备。它不会检查正在使用的设备,但用户代理可以向您的站点发送一些基本信息。 WP docs:http://codex.wordpress.org/Function_Reference/wp_is_mobile

要获得您网站的“完整视图”版本,有两种方法可以实现这一目标......聪明的方法不需要您在不同的suddomains上拥有两个网站副本。

  1. 使用wp_is_mobile功能,您可以使用此功能动态地将您网站上的链接添加到“桌面版”中 - 使用wp_is_mobile功能,您只需添加“桌面版”版本“链接,如果有人使用您的网站的移动版本。 - &GT;然后,您可以在$_GET中使用header.php变量链接,以便不回显浏览器元(您知道何时删除了元数据并且您在手机上获得了完整的网站?)因此,您应该能够在移动设备上查看完整的网站。
  2. 将您网站上的永久链接指向包含$_GET变量的“桌面版”,您可以将该header.php变量输入{{1}},以便不回显元标记以更改移动版本的网站
  3. 更“动态”方法的问题(如上所述)是您的CSS媒体查询将覆盖并可能导致您出现问题。另一种方法是在没有任何响应式CSS的子域上托管您的站点副本...

答案 1 :(得分:0)

你到底想要实现的目标是什么?小型决议是否适合改编网站?如果是这样测试分辨率。
如果您在某些功能缺失(flash,javascript,...)时尝试调整您的网站,那么您应该测试它们 现在你可以在笔记本电脑上安装Android,你可以在一些Android手机上更改你的浏览器。

答案 2 :(得分:0)

取决于你想要去的自定义,但php有一个内置函数叫做get_browser()

来自php白页,

<?php
$browser = get_browser(null, true);
print_r($browser);
?>

将输出与

类似的内容
Array
(
    [browser_name_regex] => ^mozilla/5\.0 (windows; .; windows nt 5\.1; .*rv:.*) gecko/.* firefox/0\.9.*$
    [browser_name_pattern] => Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9*
    [parent] => Firefox 0.9
    [platform] => WinXP
    [browser] => Firefox
    [version] => 0.9
    [majorver] => 0
    [minorver] => 9
    [cssversion] => 2
    [frames] => 1
    [iframes] => 1
    [tables] => 1
    [cookies] => 1
    [backgroundsounds] =>
    [vbscript] =>
    [javascript] => 1
    [javaapplets] => 1
    [activexcontrols] =>
    [cdf] =>
    [aol] =>
    [beta] => 1
    [win16] =>
    [crawler] =>
    [stripper] =>
    [wap] =>
    [netclr] =>
)
然后,您可以根据该数据做出各种设计决策。特别是你的任务的[平台]和[浏览器]