Чи ефективний 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.