Эффективен ли wp_is_mobile ()?


16

Я собираюсь протестировать пользовательский агент для загрузки мобильного шаблона вместо темы рабочего стола.

Существует множество сценариев обнаружения мобильных устройств.

  • Есть ли wp_is_mobile()функция работает хорошо?
  • Каков ваш опыт по сравнению с другими классами, например mobiledetect.net?

Ответы:


15

Да, это работает хорошо. Это очень простая функция, но никогда не находила мобильное устройство, не распознаваемое им. Он распознает более 90% мобильных устройств. Основное отличие от mobiledetect.net в том, что не отличается от телефона и планшета.

См код


Но как подсказка - 90% это еще не все, а 90% - это только сегодня. Мы получаем очень быстрое новое устройство, и эта функция часто бесполезна. Вы исключаете устройства, пользователей из решения.
Бюлтге

8

Да, wp_is_mobile()работает хорошо, но вы можете столкнуться с проблемами при использовании агрессивных систем кэширования, таких как fastcgi, прокси-кеш и т. Д., Которые пропускают выполнение php.

Если это так, я бы рекомендовал какой-нибудь метод обнаружения на стороне клиента (javascript), который загружается как для мобильных, так и для настольных браузеров.


Неплохо подмечено. Если вы используете полное кэширование страниц в автоматическом режиме (для каждого запроса), он будет содержать версию для мобильного ИЛИ настольного компьютера, в зависимости от того, с какого устройства был сделан первый запрос. Все дальнейшие запросы будут обслуживаться с этой версией, независимо от того, какой это тип устройства. Если вы используете решение предварительного кэширования (которое я всегда использую), вы получите сгенерированные версии для настольных компьютеров, а мобильные пользователи всегда получат их.
Игорь Воротнов

6

Это дерьмовая идея использовать эту функцию. Идентификация устройства всегда должна выполняться на стороне клиента, и пользовательский агент, вероятно, является худшим способом определения того, поддерживает ли устройство функцию X или имеет форм-фактор Y.

Вы начинаете использовать его, когда сайт молодой, а затем ваш сайт растет, и вы решаете кэшировать свой HTML-код, и бум, когда весь код обнаружения вашего устройства перестает работать ..... Лучше не спускаться с этого союзника.


Я проголосовал за ваш ответ, потому что на мой взгляд очень важны соображения о кеше.
Марко Паничи
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.