Визначення браузера користувача в Wordpress сайті

Всім привіт Всім привіт! Сьогодні я хотів би розповісти про те, як можна визначити браузер, з якого заходить користувачі до вашого сайту WordPress. Ви можете запитати: для чого це взагалі потрібно? А я Вам відповім: для того щоб повідомляти користувачам, що у них встановлений старий браузер і його необхідно змінити.

Буває таке, що Ваш сайт некоректно відображається в старих версіях сайту, в основному це стосується браузера Internet Explorer, над ним багато приколюються і не люблять. Тому, якщо у Вас некоректно відображається інформація в якомусь браузері, то Ви можете запропонувати користувачам змінити браузер, щоб Ваш сайт коректно у них відображався.

Така функція дуже популярна, особливо вона популярна у тих, хто розробляє власні браузери, коли заходиш на їх сайт з чужого браузера, то вони пропонують скачати свій, нібито швидше все буде, ну в загальному рекламують його (наприклад, яндекс.браузер або Google Chrome).

Щоб вирішити дану проблему на своєму сайті WordPress, ми можемо скористатися кількома методами, про кожного з них я б і хотів Вам розповісти.

Перший. Звичайний і класичний хак, який призначений спеціально для браузера Internet Explorer - це підключення стилів.

<! - [IF IE 6]> <link rel = "stylesheet" type = "text / css" media = "screen" href = "css / cssf-ie6.css" /> <! [Endif] ->

Дані спосіб дуже часто використовують верстальники, тобто ті, які верстають сайти. Не обов'язково це виносити в окремий CSS-файл, можна підключити в якомусь файлу шаблону, де розміщений тег <head>.

Автор сайту пропонує трохи інший спосіб, але дуже схожий на перший - він запропонував написати функцію, яка дозволить визначати браузер користувача, а функція у нас вийшла такою:

function maxsite_testIE () {$ user_agent = $ _SERVER [ 'HTTP_USER_AGENT']; $ BrowserIE = false; if (($ user_agent, 'MSIE 7.0')) $ browserIE = true; // IE7 if (($ user_agent, 'MSIE 6.0')) $ browserIE = true; // IE6 if (($ user_agent, 'MSIE 5.0')) $ browserIE = true; // IE5 return $ browserIE; }

Дану функцію необхідно помістити в файл functions.php , А потім у файлі, де Ви хочете бачити повідомлення, що у користувача нібито застарілий браузер і йому необхідно завантажити новий, то необхідно вставити наступний код:

<? Php if (maxsite_testIE ()) {echo 'Ваш браузер застарілий'; }?>

Всі вищезгадані способи відмінно працюють на 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, тому можна скористатися наступним кодом в тому місці, де Ви хочете виводити повідомлення:

<? Php if ($ is_IE) {?&gt; Ваш браузер застарілий <? Php}?>

Бачите як все просто. Дуже легко можна визначити браузер, версію браузера на сайті WordPress без використання різних плагінів, модулів, тим самим розвантаживши трохи Ваш хостинг . Так, не забудьте прочитати статтю про те, які зараз самі популярні браузери .

Також радимо почитати на PressDev.RU

Ви можете запитати: для чого це взагалі потрібно?
Php if (maxsite_testIE ()) {echo 'Ваш браузер застарілий'; }?
Php if ($ is_IE) {?
Gt; Ваш браузер застарілий <?
Php}?