Мобильная версия сайта
Привет всем. Вопрос тем кто работал с копмонентом Mobile Detection
Тестирую компонент Mobile Detection, для моб. версии сайта. Отличный компонент, но хотелось бы чтобы была возможность заходить на моб. версию сайта самостоятельно.
То есть компонент работает, только если зайти на сайт с телефона, тогда моб версия активируется. Если перейти site.com/?browser=mobile на стационарном компе, он не включает моб версию.
Может кто знает, как сделать чтобы можно было путешествовать из мобильной версии в обчную без проблем?
Решение под катом
Решение по мобильной версии:
Качаем компонент tagstemplate-0.0.1-beta.transport.zip.
Переименовываем его соответственно в tagstemplate-0.0.1-beta.transport.zip
Pаливаем на сервер в папку /core/packeges/
Устанавливаем
В шаблоне все что будет мобильной версией заключаем в тэги
все что обычная версия сайта в тэги
Можно также добавить версию для слабовидящих заключив ее в тэги
UPD 25.12.2014:
Выводить чанки версий сайта лучше так:
/?theme=mobile — адрес для мобильной версии
/?theme=blind — адрес для версии для слабовидящих
/?theme=normal — обычная версия
Автор плагина: Виктор
Тестирую компонент Mobile Detection, для моб. версии сайта. Отличный компонент, но хотелось бы чтобы была возможность заходить на моб. версию сайта самостоятельно.
То есть компонент работает, только если зайти на сайт с телефона, тогда моб версия активируется. Если перейти site.com/?browser=mobile на стационарном компе, он не включает моб версию.
Может кто знает, как сделать чтобы можно было путешествовать из мобильной версии в обчную без проблем?
Решение под катом
Решение по мобильной версии:
Качаем компонент tagstemplate-0.0.1-beta.transport.zip.
Переименовываем его соответственно в tagstemplate-0.0.1-beta.transport.zip
Pаливаем на сервер в папку /core/packeges/
Устанавливаем
В шаблоне все что будет мобильной версией заключаем в тэги
все что обычная версия сайта в тэги
Можно также добавить версию для слабовидящих заключив ее в тэги
UPD 25.12.2014:
Выводить чанки версий сайта лучше так:
<normal>
[[!$[[!#COOKIE.ttTemplate:is=`normal`:or:is=``:or:if=`[[!#GET.theme]]`:is=`normal`:then=`.n.front`:else=``]]]]
</normal>
<mobile>
[[!$[[!#COOKIE.ttTemplate:is=`mobile`:or:if=`[[!#GET.theme]]`:is=`mobile`:then=`.m.front`:else=``]]]]
</mobile>
<blind>
[[!$[[!#COOKIE.ttTemplate:is=`blind`:or:if=`[[!#GET.theme]]`:is=`blind`:then=`.b.front`:else=``]]]]
</blind>Чтобы не рендерилось 3 чанка сразу, а выбирался нужный./?theme=mobile — адрес для мобильной версии
/?theme=blind — адрес для версии для слабовидящих
/?theme=normal — обычная версия
Автор плагина: Виктор
Комментарии: 28
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Вообще у меня лежит допиленный под свои нужны Mobile Detection… но пока не до конца собранный в пакет((
Если интересно плагин на событие OnWebPagePrerender и обновленный mdetect в assets/components/tagstemplate.
Можно пакет скомпилировать и он тоже будет работать, но хочу параметры вынести из плагина, зачем то… видимо для опыта)
щас проверю отпишусь
s265.h1.simpledream.ru/?theme=mobile
Скомпилированный пакетСтранно, zip заливается на modx.pro дает ссылку на файл, но нерабочую.
Тогда уж сами компильте, кому надо
После закачки нужно переименовать файл в tagstemplate-0.0.1-beta.transport.zip.
У меня было как, то так чтобы держать 2 кеша паралельно
Можно заменить системный modRequest своим, чтобы раскладывать кэш раздельно для обычной и мобильной версии. Вот этот метод надо расширить — он управляет загрузкой ресурса из кэша или БД.
За модуль спасибо! Все работает!
Не делайте так, будут проблемы с доступом для ботов (индексацией)
developers.google.com/speed/pagespeed/insights/
вот это условие. Если Зашли с мобильного устройства, но в то же время кука еще не установлена и ГЕТ тоже не установлен — то получим пустую страницу
так как используется пдо парсер
P.S. Хочу сделать еще кнопку при просмотре мобильной версии (полная версия сайта) насколько понимаю параметр будет в cookie записываться думаю писать под это дело свой сниппет, но такое чувство что здесь уже все написано, нужно только разобраться.