WordPress как на ладони
wordpress jino

Как добавить название браузера к классам body?

Привет всем, друзья веб-девелоперы!

У меня возникла такая задача: нужно к тегу BODY добавить название браузера текущего пользователя.

Я нашел хук body_class из 3 примера: http://wp-kama.ru/function/body_class В принципе, знаю как добавить браузер, но вот как его быстро и правильно определить, затрудняюсь...

Помогите пожалуйста...

0
Гость 1.6 года назад
  • 0
    Kama4639

    Вот хук, который добавляет название браузера к классу body. Также, добавляется 'mobile', если просматривается с мобильного устройства:

    add_filter('body_class', 'current_browser_to_body_class');
    function current_browser_to_body_class( $classes ){
    	$browsers = array('is_lynx', 'is_gecko', 'is_winIE', 'is_macIE', 'is_opera', 'is_NS4', 'is_safari', 'is_chrome', 'is_iphone', 'is_IE', 'is_edge');
    
    	$add = 'unknown__browser';
    
    	foreach( $browsers as $is ){
    		if( isset($GLOBALS[ $is ]) && $GLOBALS[ $is ] ){
    			$add = substr( $is, 3);
    			break;
    		}
    	}
    
    	$classes[] = $add;
    
    	if( $is_iphone )     $classes[] = 'iphone';
    
    	if( wp_is_mobile() ) $classes[] = 'mobile';
    
    	return $classes;
    }
    
    body_class(); 
    // выведет:
    // class="page page-id-19 page-template-default logged-in admin-bar no-customize-support chrome"

    Добавляются следующие классы для разных браузеров:

    • lynx
    • gecko
    • winIE
    • macIE
    • opera
    • NS4
    • safari
    • chrome
    • iphone
    • IE
    • edge
    • unknown__browser
    • iphone
    • mobile

    НО! Если у вас на сайте используется страничный кэш, то такой подход будет бесполезный. В этом случае лучше использовать JavaScript!

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Регистрация. Вход.