Opracowałem responsywny motyw i chcę go przesłać na wordpress.org . Przed przesłaniem go chcę użyć wp_is_mobile()
w moim motywie, ale zgodnie z funkcją Reference Reference / wp jest mobilny , jest to zły pomysł, ponieważ mówi:
Należy zdawać sobie sprawę, że nie wykrywa to specjalnie telefonu komórkowego, ponieważ tablet jest uważany za urządzenie mobilne. Sprawdź w obszarze Wtyczki kilka pomocnych alternatyw. Nie należy go także używać do motywów.
Więc jeśli użyję tego w moich funkcjach theme.php, to:
add_filter('body_class','mobile_theme_body_class');
function mobile_theme_body_class( $classes ){
if ( wp_is_mobile() ){
$classes[] = 'mobile';
}
else{
$classes[] = 'desktop';
}
return $classes;
}
Czy mój motyw zostanie odrzucony?
Podpytanie:
Jeśli użyję mojej funkcji jak w powyższym kodzie i użyję Caching Plugins, takich jak (WP Super Cache), czy moja funkcja zostanie pomieszana (nie wykonała się lub nie zwróciła fałszywych alarmów)?
Dziękujemy za poświęcony czas i odpowiedzi ...
źródło
wp_is_mobile()
jest naprawdę żartem i jest naprawdę zawodny. Opiera się na stronie użytkownika, którą może manipulować użytkownik końcowy. Musisz wiedzieć, że Twoja funkcjonalność nie powiedzie się w ponad 10% przypadków, więc duża liczba użytkowników mobilnych zostanie pozbawiona treści na komputery, niezależnie od tego, czy im się to podoba, czy nieOdpowiedzi:
W bardzo laikańskim znaczeniu
wp_is_mobile()
nie oznacza stylizowania motywu.Jak to działa: pasuje do natywnej nazwy urządzenia w Ciągu agenta użytkownika. Jeśli więc ktoś manipuluje ciągiem i wysyła fałszywe informacje, nie można wykryć, jakie to urządzenie. I nie zwraca żadnej nazwy urządzenia, tylko zwraca,
true
jeśli nie korzystasz z innego komputerafalse
Jak WordPress go używa: WordPress nie może go używać do stylizacji ani dodawania CSS w dowolnym miejscu. WordPress używa go do dodawania lub manipulowania rzeczami, które powinny być tylko na urządzeniach mobilnych (niezależnie od rozmiaru i nazwy). Np. Do dodawania skryptów dotykowych, dodawania okienka, klasy mobilnej w nagłówku administratora, dodawania przycisków mobilnych.
Efekt buforowania : Jeśli używasz wtyczki buforowania, jest to bezużyteczne. Ponieważ kod nie jest wykonywany za każdym razem, za każdym razem otrzymujesz ten sam wynik.
WordPress używa go głównie na zapleczu i prawie każda wtyczka buforująca wyklucza buforowanie na zapleczu lub powiedz dla zalogowanego użytkownika. Więc działa dobrze.
źródło
wp_is_mobile()
jest związany zHTTP USER AGENT
, nie jest związany z rozmiarem ekranuwp_is_mobile
zwraca wartość true lub false na podstawie$_SERVER['HTTP_USER_AGENT']
jeśli
$_SERVER['HTTP_USER_AGENT']
zawiera Mobile (Android lub BlackBerry itp.),następnie
wp_is_mobile
zwraca - true (wykryty jako urządzenie mobilne), jeśli nie, to zwrócifalse
prosty przypadek użycia - aby utworzyć link, spróbuj przejść do aplikacji mobilnej lub strony internetowej.
po więcej informacji sprawdź kod źródłowy funkcji
źródło