Есть отличный плагин для Textpattern`а – act_if_mobile. Этот плагин позволяет управлять выводом некоторых элементов интерфейса сайта, относительно того зашел пользователь с мобильного устройства или с «большого брата».
Этот плагин был разработан давно еще когда вовсю использовался TXP версии 4.0.7. Собственно под нее он и делался. Все движется и не стоит на месте. TXP уже подрос до версии 4.5.5, а разработкой плагином никто не занимается.
Я решил исправить это недоразумение и внести свою лепту.
Нафига козе боян?
Сейчас заниматься разработкой сайта только для больших мониторов, вообще не касаясь маленьких экранов, считается неправильным. Каждый сайт должен самостоятельно адаптироваться под размер экрана и как минимум должен «не плыть» на маленьких разрешениях.
Сейчас есть много инструментов, которые позволяют это сделать. Начиная от CSS-стилей и заканчивая средствами jQuery и PHP. По моему скромному мнению, неправильно скрывать от посетителей любые элементы дизайна только на основании размера монитора. Именно поэтому использовать CSS здесь нельзя. CSS целесообразнее использовать только для визуального изменения элементов, но не в коем случае нельзя скрывать элементы.
В CSS-стилях многих сайтов можно встретить запись типа:
@media screen and (max-width: 600px) {
header {
display: none;
}
}
Так делать нельзя и я объясню почему.
Адаптивный дизайн подразумевает, что посетитель, который пришел на сайт с мобильного устройства, увидит упрощенный интерфейс, а не тот же самый интерфейс, только со скрытыми от него элементами.
Сейчас модно размещать на сайте jQuery-слайдеры. Такие слайдеры обычно не несут информационной ценности и чаще всего в мобильной версии сайта не используются. Если скрытие такого, достаточно тяжелого элемента интерфейса, реализуется средствами CSS свойством @media screen, то «мобильный» посетитель, в любом случае, загрузит его на свой смартфон, но браузер его просто не покажет. Согласитесь, что это не правильно. Логичнее вообще не показывать слайдер для «мобильных» пользователей, экономя их нервы и трафик.
Почему не работает act_if_mobile
Если установить act_if_mobile в TXP последних версий, то ваш сайт будет «рассказывать» Вам об ошибке:Deprecated: Function ereg() is deprecated
Эта ошибка возникает из-за того, что php-функция в новых версиях этого языка программирования ereg(); стала неприемлемой и теперь вместо нее необходимо использовать preg_match();.
Получается, что плагин использует:
ereg('шаблон', $s);
а теперь необходимо использовать:
preg_match('/шаблон/', $s);
Можете заменить все вручную или скачать готовый плагин – act_if_mobile_v0.2.txt. Я специально подправил у него версию, чтобы не возникало путаницы с оригиналом.
Комментарии
Нет комментариев к данной статье.
Комментарии