Używając Drupal 7.14 z włączonym filtrem PHP, mam następujący typ zawartości strony podstawowej:
<?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; ?>
Pojawia się komunikat o błędzie:
Uwaga: Niezdefiniowana zmienna: is_mobile in eval () (wiersz 1 D: \ sites \ modules \ php \ php.module (80): kod eval () 'd).
Rozumiem - próbuję pobrać zmienną z systemu Drupal, ale czy jest na to sposób? Może używasz tokenów?
Odpowiedzi:
Wykrywanie mobilne nie jest wbudowane w Drupala ani w najpopularniejsze motywy (myślę, że motyw Adaptive Theme to robi). Aby to zrobić, musisz zainstalować moduł contrib. Trzy opcje to Browscap , Narzędzia mobilne i Mobile Detect . To, dokąd się wybierasz, zależy od używanego modułu.
źródło
$is_mobile
wygląda na to, że pochodzi z modułu Mobile Detect, o którym wspomniał MPD. Patrząc na stronę projektu dla tego modułu, wygląda na to, że potrzebujesz również biblioteki Mobile_Detect. Czy masz to zainstalowane?$is_mobile
nie jest bezpośrednio dostarczane przez Mobile Detect (jestem autorem modułu). AT zapewnia to po wyjęciu z pudełka, jeśli moduł Browscap jest zainstalowany / włączony.Napisałem bardzo prosty moduł, który wykrywa mobilne programy użytkownika i ustawia odpowiednią zmienną globalną, do której możesz uzyskać dostęp w swoim szablonie.
W szablonie możesz go używać w następujący sposób:
źródło
Możesz spróbować użyć modułu Theme Key do sprawdzenia urządzenia mobilnego.
Zapewnia elastyczność w zakresie zmiany motywu nie tylko w zależności od rodzaju urządzenia, ale może także motywować różne części witryny w oparciu o różne warunki.
Tutaj jest link do prostego samouczka z użyciem themekey.
Jeśli dopiero zacząłeś projektować witrynę, zalecamy użycie motywu Omega do opracowania, ponieważ ma on opcję zmiany układu i dostosowania go (w zależności od rozmiaru / rozdzielczości ekranu). Obsługuje również HTML5.
Można go dobrze połączyć z modułem Omega Tools , aby utworzyć podtemat Omega z interfejsu użytkownika.
źródło
W template.php umieść ten kod
W pliku node.tpl.php umieść ten kod
Następnie wyczyść pamięć podręczną.
Źródło: Wykryj przeglądarkę mobilną
źródło