@pcdesign

Как в Magento выявить, что к сайту обратились с мобильного устройства?

Magento вер. 1.9.0.1

Пробовал вот так:
$ua = Mage::helper('core/http')->getHttpUserAgent();
if ( Zend_Http_UserAgent_Mobile::match($ua,  $_SERVER )){
        echo '<p>This is mobile</p>'; 
}


Но, что-то не работает.
Какой бы браузер ни был, всегда выдает истину и всегда пишет "This is mobile".
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
Hide
@Hide
инженер-программист
Это вопрос больше по PHP, чем по Magento. На SO на него уже отвечали:
stackoverflow.com/questions/5335237/how-to-check-i...
Советовали решение на базе MobileESP: blog.mobileesp.com

Вот еще вариант с SO:
stackoverflow.com/questions/4117555/simplest-way-t...

А это спец. расширение с хелпером для Magento:
https://www.magentocommerce.com/magento-connect/ca...

Гуглил по фразе php 5 detect mobile

Ваше решение тоже есть на SO:
stackoverflow.com/questions/5541171/how-to-handle-...

Почему не работает такой вариант? Это можно узнать, проанализировав содержимое переменной $ua и логику работы метода Zend_Http_UserAgent_Mobile::match(). Какие значения попадают в переменную $ua в вашем случае?

UPD: комментарий от автора вопроса
Спасибо за помощь. Разобрался. Код в топике рабочий. Это чисто магентовский прикол связанный с кешированием. Перетащил код в другое место, все заработало, там где нет жесткого кеширования.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы