Wp_is_mobile () kullanımı doğru mu?


18

Duyarlı bir tema geliştirdim ve wordpress.org'u göndermek istiyorum . Göndermeden önce kullanmak istediğim wp_is_mobile()benim tema, fakat uygun Fonksiyon Referans / wp mobil bir olduğunu kötü bir fikir o da şu demek çünkü:

Tablet bir mobil cihaz olarak kabul edildiğinden, bunun özellikle bir cep telefonunu algılamadığını fark etmelisiniz. Birkaç yararlı alternatif için Eklentiler alanına bakın. Ayrıca temalar için kullanılmamalıdır.

Bu yüzden tema fonksiyonumda kullanırsam.php şöyle:

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;
}

Temam reddedilecek mi?

Alt soru:

Yukarıdaki kodda olduğu gibi işlevimi kullanır ve (WP Süper Önbellek) gibi Önbellek Eklentileri kullanırsam işlevim bozulacak mı (yürütülemedi veya yanlış pozitifler döndürülemedi)?

Zaman ayırdığınız ve cevapladığınız için teşekkür ederiz ...


1
Diyorlar ki, bu işleve sahibiz, ama kullanmıyoruz, çünkü iyi değil - ne kadar ironik. Temanızın onu kullanmaktan dolayı reddedilip reddedilmeyeceğini bilmiyorum, ama eğer öyleyse, ironiyi maksimuma çıkaracaktır. Sonuçta bir WP fonksiyonudur ve kullanımdan kaldırılmamıştır.
Nicolai

3
Asıl soru, neden mobil / masaüstü sınıfını eklemek istediğinizdir?
TheDeadMedic

1
@TheDeadMedic'in söylediği doğrudur, örneğin CSS medya sorgularıyla çalışabilirsiniz .
Nicolai

1
wp_is_mobile()gerçekten bir şakadan başka bir şey değildir ve gerçekten güvenilmezdir. Son kullanıcı tarafından manipüle edilebilen kullanıcı tarafına dayanır. İşlevlerinizin vakaların% 10'undan fazlasında başarısız olacağını bilmeniz gerekir, bu nedenle çok sayıda mobil kullanıcı ister isteseler de beğenmesinler de masaüstü içeriği ile
kaplanır

4
Yani orada ve sadece query_posts () gibi berbat;
Dejo Dekic

Yanıtlar:


31

Çok layman terimi wp_is_mobile()temanızı şekillendirmek için değildir.

Nasıl çalışır: Kullanıcı Aracısı Dizesi'ndeki bazı yerel adlarla eşleşir. Birisi dizeyi manipüle eder ve yanlış bilgi gönderirse, hangi cihaz olduğunu algılayamazsınız. Ve truemasaüstünde değilseniz başka bir cihaz adı döndürmezfalse

WordPress nasıl kullanılır: WordPress, CSS'yi herhangi bir yere stil eklemek veya eklemek için kullanmaz. WordPress, yalnızca mobil cihazlarda (boyut ve ad ne olursa olsun) olması gereken bir şey eklemek veya değiştirmek için kullanır; örneğin, dokunmatik komut dosyaları eklemek, görünüm penceresi eklemek, yönetici başlığına mobil sınıf eklemek, mobil düğmeler eklemek.

Önbelleğe almanın etkisi : Önbellek eklentisi kullanıyorsanız işe yaramaz. Kodunuz her seferinde yürütülmediği için her seferinde aynı sonucu elde edersiniz.

WordPress çoğunlukla arka uçta kullanır ve neredeyse her önbellek eklentisi arka uçta önbelleğe almayı hariç tutar veya giriş yapmış kullanıcı için söyler. Yani iyi çalışıyor.


1

wp_is_mobile()ile ilgili HTTP USER AGENT, ekran boyutu ile ilgili değil

wp_is_mobile dayalı olarak doğru veya yanlış döndür $_SERVER['HTTP_USER_AGENT']

eğer $_SERVER['HTTP_USER_AGENT']Mobile (böylece Android ya da BlackBerry ya ..) içerir,

sonra wp_is_mobiledöner - true (mobil cihaz olarak algılanır), eğer değilse geri dönerfalse

basit bir kullanım örneği - bağlantı kurmak için Mobil Uygulama veya Web sayfasına gitmeyi deneyin.

daha fazla bilgi için fonksiyon kaynak kodunu kontrol edin

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.