Поддержка Проблемы и решения Функция wp_is_mobile()

  • Решено Uriy Nikolaevich

    (@uriy-nikolaevich)


    Добрый вечер! Подскажите! В кодексе взял пример реализации функции

    function wp_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;
    }

    Но по чему то сайта «слетает» . Что тут не так ?

Просмотр 8 ответов — с 1 по 8 (всего 8)
  • Модератор Yui

    (@fierevere)

    ゆい★ღツ

    а как вы применяете это ? и что именно слетает?

    Полностью вставлял в файл functions.php дочерней темы . С указанием $is_mobile. Но сайт становился не доступным. Решил поэтапно ввел функцию как в кодексе. Сайт не доступен. У Камы есть подобная функция, но более расширенная. Вставил . Нормально прописал вывод тоже нормально. Но хочется разобраться почему первоначальная функция не работает. В принципе то что надо было сделать , я уже сделал и вывел через шорткод. Но вот вопрос «почему» задевает 🙂

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Что тут не так ?

    Вероятно, проблема в том, что функция с таким названием уже существует.

    Второй пример с функцией у Камы такое же название. Но все хорошо. Но если не видите причины, ну ладно. Не критично. Как я писал, что было необходимо я сделал. Хотя для познания хотел разобраться.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Полностью вставлял в файл functions.php дочерней темы.

    Зачем, если эта функция уже есть в WordPress? Только что проверил — выдаётся ошибка Fatal error: Cannot redeclare wp_is_mobile(), как и ожидалось.

    Второй пример с функцией у Камы такое же название.

    Если речь об этой странице, то там предлагается функция is_mobile(), а это совсем не то же самое, что wp_is_mobile().

    Блин , просмотрел. Большое спасибо !!!!!!!

    Модератор Yui

    (@fierevere)

    ゆい★ღツ

    если экспериментируете — включайте и смотрите лог ошибок, избавляет от необходимости гадать что же пошло не так, там все написано )

    по-хорошему стоит и на предупреждения и заметки (warning , notice) обращать внимание, если это ваш код

    Спасибо за подсказку и помощь!

Просмотр 8 ответов — с 1 по 8 (всего 8)