Wp_is_mobile () est-il efficace?

16

Je vais tester l'agent utilisateur pour charger un modèle mobile au lieu du thème de bureau.

Il existe de nombreux scripts de détection mobile.

  • La fonction wp_is_mobile()fonctionne- t-elle bien?
  • Quelle est votre expérience par rapport à d'autres classes comme par exemple mobiledetect.net?
Andrea Puiatti
la source

Réponses:

15

Oui ça marche bien. C'est une fonction très simple mais n'a jamais trouvé d'appareil mobile non reconnu par lui. Il reconnaît les 90% + des appareils mobiles. La principale différence avec mobiledetect.net est qu'il ne diffère pas du téléphone et des tablettes.

Voir le code

gmazzap
la source
Mais comme indice - 90% n'est pas tout, et 90% ne l'est qu'aujourd'hui. Nous obtenons un nouvel appareil très rapidement et cette fonction n'est souvent pas utile. Vous excluez les appareils et les utilisateurs de la solution.
bueltge
8

Oui, cela wp_is_mobile()fonctionne bien, mais vous pouvez rencontrer des problèmes lors de l'utilisation de systèmes de mise en cache agressifs, tels que fastcgi, cache proxy, etc. qui sautent l'exécution php.

Si tel est le cas, je recommanderais une méthode de détection côté client (javascript) qui est chargée pour les navigateurs mobiles et de bureau.

Dan Ștefancu
la source
C'est un bon point. Si vous utilisez la mise en cache pleine page en mode automatique (par demande), le cache contiendra la version mobile OU de bureau, en fonction de l'appareil à partir duquel la première demande a été effectuée. Toutes les autres demandes seront servies avec cette version, quel que soit le type d'appareil. Si vous utilisez une solution de pré-mise en cache (ce que je fais toujours), vous obtiendrez des versions de bureau générées et les utilisateurs mobiles les obtiendront toujours.
Ihor Vorotnov
6

C'est une idée merdique d'utiliser cette fonction. L'identification du périphérique doit toujours être effectuée côté client, et l'agent utilisateur est probablement le pire moyen d'identifier si un périphérique prend en charge une fonctionnalité X ou s'il a un facteur de forme Y.

Vous commencez à l'utiliser lorsque le site est jeune, puis votre site grandit et vous décidez de mettre en cache votre code HTML et de faire exploser tout le code de détection de votre appareil ..... Mieux vaut ne pas descendre cet allié en premier lieu.

Mark Kaplun
la source
J'ai voté pour votre réponse parce que les considérations sur le cache sont également très importantes à mon avis.
Marco Panichi