WordPress: individuare il browser dell'utente

WordPress: individuare il browser dell'utente

In WordPress è spesso di vitale importanza individuare il browser dell'utente al fine di fornire un particolare tipo di layout o di risolvere specifici problemi legati ad un determinato browser. Possiamo sfruttare il nome del browser per vari scopi. Vediamoli insieme.

Per prima cosa definiamo una funzione di utility che individua i quattro browser principali:


function get_ua() {
	$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
	$browser = '';
	
	if(stristr($ua, 'chrome')) {
		$browser = 'chrome';
	} else if(stristr($ua, 'firefox')) {
		$browser = 'firefox';
	} else if(stristr($ua, 'safari')) {
		$browser = 'safari';
	} else if(stristr($ua, 'msie')) {
		$browser = 'ie';
	}
	
	return $browser;
}

Un uso molto comune è quello di fornire una classe CSS speciale all'elemento body:


<body class="<?php echo get_ua(); ?>">

Con quella classe poi possono essere applicati una serie di stili CSS diversi a seconda del browser o anche aggiunti dei comportamenti e delle interazioni JavaScript indirizzate ad un particolare browser.

Possono essere anche caricati degli stili CSS per i vari browser o, nel caso di Internet Explorer, usati i commenti condizionali solo quando ce n'è effettivamente bisogno:


<head>
<?php
$browser = get_ua();
if($browser == 'ie') {
?>
<!--[if lt IE 9]>
<script type="text/javascript" src="<?php echo get_template_directory_uri() . '/js/html5.js';?>"></script>
<![endif]-->
<?php } ?>
</head>

Torna su