Можно ли пользоваться функцией wp_is_mobile() для скрытия ненужного кода?


Dmitriy_2014
114

Всем привет!

В WordPress есть функция wp_is_mobile() которая проверяет с мобильного ли устройства просматривается сайт.

Можно ли её спокойно использовать для скрытия лишнего в мобильном варианте и наоборот, ну то есть у меня и так все скрывается через display: none и медиа запросы, но код то остается, в общем хочется, чтобы лишний код из десктопа не появлялся в мобильной версии, и из мобильной версии не появлялся в десктопной.

/*

Есть внутренние подозрения что эта функция не совсем точно определяет мобильность пользователей и могут быть какие-то косяки, хотя это не точно…

*/

Заранее всем спасибо за ответы!


LEOnidUKG

Не рекомендую.

Если у вас много что-то скрывается и переделывается, рекомендую лучше вёрстку вообще, чтобы не было диких перегрузов информацией. 


Dmitriy_2014

В общем вариант так себе, моя идея с инверсией – скрыть из мобильной код для десктопа провалилась, нет на мобиле работает все хорошо, но на десктопе, когда сворачиваешь окно браузера до типа мобильной версии и даже обновляешь его то все работает не так, видимо эта функция ширину не определяет, получается нет того кода, когда сворачивается окно на десктопе, не знаю правда нужно это или нет, но выглядит крипово.


Dmitriy_2014

Но скрыть код из десктопной версии для мобильной, того же сайдбара например, вполне нормально.


SeVlad

Dmitriy_2014 #:
моя идея с инверсией – скрыть из мобильной код для десктопа провалилась, нет на мобиле работает все хорошо, но на десктопе, когда сворачиваешь окно браузера до типа мобильной версии и даже обновляешь его то все работает не так,

Всё потому что ты тут просто генеришь  контент, не затрудняя себе хоть малейшим вниканием в вопрос.

Ну а для тех кому всё же будет интересно я объясню.

Во первых php-функции предназначены не для «скрытия» чего либо в браузере, а совсем для другого. Скрытие делается с пом. css/js.

Во вторых конкретно эта функция определяет юзергант по $_SERVER[‘HTTP_USER_AGENT’] на вхождение «Mobile», «Android», «Silk/», «Kindle», «BlackBerry», «Opera Mini», «Opera Mobi». Матчасть.

wp_is_mobile() | Function | WordPress Developer Resources

  • developer.wordpress.org
Test if the current browser runs on a mobile device (smart phone, tablet, etc.)


Dmitriy_2014

SeVlad #:
Во первых php-функции предназначены не для «скрытия» чего либо в браузере, а совсем для другого. Скрытие делается с пом. css/js.

Да все верно не скрыть, а убрать лишний код при определении мобильное/не мобильное устройство, к функции у меня претензий нет она работает, но не совсем так как я того ожидал.


totamon

Dmitriy_2014 #:
Да все верно не скрыть, а убрать лишний код при определении мобильное/не мобильное устройство, к функции у меня претензий нет она работает, но не совсем так как я того ожидал.

р - разочарование...


alexdn

Я эту функцию использую, когда нужно на мобильных устройстваx убрать из кода какой-нибудь тяжёлый для рендеринга блок, вроде слайдера.

Работает на основе определения юзер-агента, и срабатывает всегда, когда нужно — сейчас вариантов мобильных юзер-агентов не так и много — или ‘Android’, или ‘Mobile’.


Sergei Ermilov

Да, просто не тестируйте на десктопе с его юзерагентом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *