Всем привет! Сегодня я хотел бы рассказать про то, как можно определить браузер, с которого заходит пользователи на Ваш сайт WordPress. Вы можете спросить: для чего это вообще необходимо? А я Вам отвечу: для того чтобы сообщать пользователям, что у них установлен старый браузер и его необходимо сменить.
Бывает такое, что Ваш сайт некорректно отображается в старых версиях сайта, в основном это касается браузера Internet Explorer, над ним многие прикалываются и не любят. Поэтому, если у Вас некорректно отображается информация в каком-то браузере, то Вы можете предложить пользователям сменить браузер, чтобы Ваш сайт корректно у них отображался.
Такая функция очень популярная, особенно она популярна у тех, кто разрабатывает собственные браузеры, когда заходишь на их сайт с чужого браузера, то они предлагают скачать свой, якобы быстрее все будет, ну в общем рекламируют его (например, Яндекс.Браузер или Google Chrome).
Чтобы решить данную проблему на своем сайте WordPress, мы можем воспользоваться несколькими методами, о каждом из них я бы и хотел Вам рассказать.
Первый. Обычный и классический хак, который предназначен специально для браузера Internet Explorer – это подключение стилей.
Данные способ очень часто используют верстальщики, то есть те, которые верстают сайты. Не обязательно это выносить в отдельный CSS-файл, можно подключить в каком-нибудь файла шаблона, где размещен тег <head>.
Автор сайта maxsite предлагает немного другой способ, но очень похож на первый – он предложил написать функцию, которая позволит определять браузер пользователя, а функция у нас получилась следующей:
function maxsite_testIE(){$user_agent=$_SERVER['HTTP_USER_AGENT'];$browserIE=false;if(stristr($user_agent,'MSIE 7.0'))$browserIE=true;// IE7if(stristr($user_agent,'MSIE 6.0'))$browserIE=true;// IE6if(stristr($user_agent,'MSIE 5.0'))$browserIE=true;// IE5return$browserIE;}
Данную функцию необходимо поместить в файл functions.php, а затем в файле, где Вы хотите видеть сообщение, что у пользователя якобы устаревший браузер и ему необходимо скачать новый, то необходимо вставить следующий код:
Все вышеупомянутые способы отлично работают на WordPress, но зачем придумывать что-то свое, если WordPress нам предоставляет такую возможность. В WordPressсуществует встроенный механизм определения браузера пользователя. Многие не знают про это и поэтому придумывают и используют собственные наработки. Существуют специальные системные глобальные переменные, которые отвечают за определение различных браузеров.
$is_lynx
$is_gecko
$is_IE
$is_winIE
$is_macIE
$is_opera
$is_NS4
$is_safari
$is_chrome
$is_iphone
Одним минусом такого метода является то, что переменные не могут определить версию конкретного браузера, а только сам браузер. По умолчанию эти переменные имеют значение False и как только они будут использоваться на какой-то странице, то они принимают значение True, поэтому можно воспользоваться следующим кодом в том месте, где Вы хотите выводить сообщение:
Видите как все просто. Очень легко можно определить браузер, версию браузера на сайте WordPress без использования различных плагинов, модулей, тем самым разгрузив немного Ваш хостинг. Да, не забудьте прочитать статью про то, какие сейчас самые популярные браузеры.