WordPress.org

Make WordPress Core

Ticket #20014: 20014-wp_is_mobile.patch

File 20014-wp_is_mobile.patch, 874 bytes (added by azaozz, 6 years ago)
  • wp-includes/vars.php

     
    9797 * @global bool $is_iis7
    9898 */
    9999$is_iis7 = $is_IIS && (strpos($_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS/7.') !== false);
     100
     101function wp_is_mobile() {
     102        static $return = null;
     103
     104        if ( $return !== null )
     105                return $return;
     106
     107        if ( empty($_SERVER['HTTP_USER_AGENT']) )
     108                $return = false;
     109        elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile') !== false // many mobile devices (all iPhone, iPad, etc.)
     110                || strpos($_SERVER['HTTP_USER_AGENT'], 'Android') !== false
     111                || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') !== false
     112                || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !== false )
     113                        $return = true;
     114        else
     115                $return = false;
     116
     117        return $return;
     118}