
MobileDetect
Определение типа устройства в MODX и вывод разного контента на одной странице


Компонент определяет тип устройства посетителя (desktop, tablet, mobile) и позволяет выводить разный контент на одной странице MODX.
Основан на библиотеке mobiledetect/mobiledetectlib ^4.11 (Detection\MobileDetect).
?browser=mobiletplMobileDetectSwitch из пакетаMobileDetect для плагинов и сниппетов| Требование | Версия |
|---|---|
| MODX Revolution | 2.8+ или 3.x |
| PHP | 8.2+ |
| pdoTools | опционально; обязателен для Fenom-блоков и модификатора | mobiledetect |
Определение строится на User-Agent и HTTP-заголовках. Режим «Desktop site» в мобильном браузере может дать неверный результат.
md_disable_plugin = Нет)После установки доступны:
| Элемент | Назначение |
|---|---|
| Плагин MobileDetect | HTML-теги, Fenom, плейсхолдер mobiledetect.device |
| Сниппет MobileDetect | Условный вывод через :is/:then |
| Чанк tplMobileDetectSwitch | Ссылки переключения desktop / tablet / mobile / auto |
Библиотека mobiledetectlib уже входит в transport. Запускать composer install на сервере не нужно.
| # | Способ | Когда использовать |
|---|---|---|
| 1 | Fenom | mobiledetect | Лучший вариант при pdoTools: код в false-ветках не выполняется |
| 2 | Fenom-блоки {mobile}, {phone}, … | Читаемая разметка в Fenom-шаблонах |
| 3 | Сниппет [[!MobileDetect]] | Без Fenom, в любом контексте MODX |
| 4 | HTML-теги <standard>, <tablet>, <mobile> | Кэш-friendly; MODX-теги внутри блоков парсятся до фильтрации |
Подробнее: Интеграция.
| Раздел | Описание |
|---|---|
| Быстрый старт | Первая интеграция за 5 минут |
| Системные настройки | Ключи md_* |
| Сниппет MobileDetect | Параметр &input |
| Интеграция | Fenom, HTML-теги, PHP API |
| Решение проблем | Кэш, pdoTools, обновление с 2.0.x |
Компонент изначально написан Vasily Naumkin как учебный пример на bezumkin.ru. Текущая версия 2.1.0-pl поддерживается в репозитории modx-pro/MobileDetect.