En utilisant Drupal 7.14 avec le filtre PHP, j'ai les éléments suivants dans un type de contenu de page de base:
<?php if ($is_mobile == TRUE):?>
<div class="fb-like-box" data-href="http://www.facebook.com/a page" data-width="710" data-height="600" data-show-faces="false" data-border-color="#73AA4B" data-stream="true" data-header="false"></div>
<?php else: ?>
<div class="fb-like-box" data-href="http://www.facebook.com/a page" data-width="900" data-height="600" data-show-faces="false" data-border-color="#73AA4B" data-stream="true" data-header="false"></div>
<?php endif; ?>
Je reçois le message d'erreur:
Remarque: Variable non définie: is_mobile dans eval () (ligne 1 de D: \ website \ modules \ php \ php.module (80): eval () 'd code).
Je comprends en quelque sorte - j'essaie de récupérer une variable du système Drupal mais y a-t-il un moyen de le faire? Peut-être en utilisant des jetons?
Réponses:
La détection mobile n'est pas intégrée à Drupal ou aux thèmes les plus populaires (je pense que le thème adaptatif le fait, cependant). Vous devez installer un module contrib pour ce faire. Trois options sont Browscap , Mobile Tools et Mobile Detect . L'endroit où vous allez dépend du module que vous utilisez.
la source
$is_mobile
semble provenir du module Mobile Detect que MPD a mentionné. En regardant la page du projet pour ce module, il semble que vous ayez également besoin de la bibliothèque Mobile_Detect. L'avez-vous installé?$is_mobile
n'est pas directement fourni par Mobile Detect (je suis l'auteur du module). AT fournit cela dès le départ si le module Browscap est installé / activé.J'ai écrit un module très simple qui détecte les agents utilisateurs mobiles et définit une variable globale correspondante à laquelle vous pouvez ensuite accéder dans votre modèle.
À l'intérieur de votre modèle, vous devez ensuite l'utiliser comme ceci:
la source
Vous pouvez essayer d'utiliser le module Thème clé pour vérifier l'appareil mobile.
Il offre une flexibilité pour changer le thème non seulement en fonction du type d'appareil, mais peut également thème différentes parties du site en fonction de différentes conditions.
Voici un lien vers un didacticiel simple utilisant themekey.
Si vous venez de commencer à concevoir le site, je vous recommande d'utiliser le thème Omega pour le développer, car il a la possibilité de changer la mise en page et de la rendre réactive (en fonction de la taille / résolution de l'écran). Il prend également en charge HTML5.
Il peut être bien combiné avec le module Omega Tools , pour créer un sous-thème Omega à partir de l'interface utilisateur.
la source
Dans template.php mettez ce code
Dans node.tpl.php mettez ce code
Après cela, videz le cache.
Source: Détecter le navigateur mobile
la source