Intereting Posts
Как напечатать shortcode с js в визуальном композиторе? исключить идентификаторы через post__not_in Почему нулевое значение в моей таблице базы данных? Можно ли добавить первую и последнюю ссылку на сообщения? do_action в условном 404 ошибок в журнале, показывающих URL-адреса с «GET», плюс и числовой код Отключение многосайтовых плагинов на определенных сайтах Для чего мне нужен jQuery? Тема сломана после обновления до WordPress 4.5, отсутствует таблица стилей? Защищенная пользовательская форма WPDB 1 Таксономия с множественной структурой URL-адреса CPT Предотвратить Tinymce от удаления входного атрибута HTML5 'required'? Насколько безопасно удалять старые сообщения для сохранения пространства базы данных? Как получить термин link, который пересекает различные пользовательские типы сообщений? Как настроить миниатюру нестандартного размера для wp_get_attachment_thumb_url ()?

Функция wp_is_mobile

Дайте мне знать, будет ли wp_is_mobile функция wp_is_mobile со всеми мобильными и планшетными устройствами? Достаточно ли проверить мобильное устройство?

Я обнаружил, что этот метод в wp-includes/vars.php

  function wp_is_mobile() { static $is_mobile; if ( isset($is_mobile) ) return $is_mobile; if ( empty($_SERVER['HTTP_USER_AGENT']) ) { $is_mobile = false; } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile') !== false // many mobile devices (all iPhone, iPad, etc.) || strpos($_SERVER['HTTP_USER_AGENT'], 'Android') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !== false ) { $is_mobile = true; } else { $is_mobile = false; } return $is_mobile; } 

Если мне нужно разработать какой-либо мобильный сайт, могу ли я использовать этот метод?

редактировать

Почему wp использует серверный скрипт для обнаружения мобильного устройства?

Нет, это не сработает. Есть буквально тысячи мобильных клиентов, и не все отправляют полезный заголовок User-Agent. Есть лучшие способы настроить сайт на маленькие экраны (что не обязательно так же, как и мобильный! ).

Используйте обнаружение на стороне клиента и предложите ссылку для переключения вида; сохраните эту опцию в файле cookie.

Я думаю, что распространенное заблуждение в том, что мобильный == маленький экран. Nexus 10 имеет больше пикселей, чем мой большой рабочий стол, а мой старый ноутбук с настольным Ubuntu показывает только 1024×768 пикселей. Surface RT имеет 1366×768 пикселей, мышь (трекпад), клавиатуру и сенсорный интерфейс. И некоторые УА просто не поддаются обнаружению .

Какой из них получит макет «оптимизирован для мобильных устройств»?