/** * Test if the current browser runs on a mobile device (smart phone, tablet, etc.) * * @return bool true|false */ function wp_is_mobile() { static $is_mobile; if ( isset($is_mobile) ) return $is_mobile; if ( empty($_SERVER['HTTP_USER_AGENT']) ) { $is_mobile = false; } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile') !== false // many mobile devices (all iPhone, iPad, etc.) || strpos($_SERVER['HTTP_USER_AGENT'], 'Android') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mobi') !== false ) { $is_mobile = true; } else { $is_mobile = false; } return $is_mobile; };
//get client ip address function get_real_ip() { $ip = false; if (! empty ( $_SERVER ["HTTP_CLIENT_IP"] )) { $ip = $_SERVER ["HTTP_CLIENT_IP"]; } if (! empty ( $_SERVER ['HTTP_X_FORWARDED_FOR'] )) { $ips = explode ( ", ", $_SERVER ['HTTP_X_FORWARDED_FOR'] ); if ($ip) { array_unshift ( $ips, $ip ); $ip = FALSE; } for($i = 0; $i < count ( $ips ); $i ++) { if (! eregi ( "^(10|172\.16|192\.168)\.", $ips [$i] )) { $ip = $ips [$i]; break; } } } return ($ip ? $ip : $_SERVER ['REMOTE_ADDR']); };