Skip to content
  1. Extras
  2. MobileDetect

MobileDetect ​

The component detects the visitor's device type (desktop, tablet, mobile) and lets you output different content on one MODX page.

Built on mobiledetect/mobiledetectlib ^4.11 (Detection\MobileDetect).

Features ​

  • Four output methods: Fenom modifier, Fenom blocks, snippet, HTML tags
  • Forced mode: GET parameter ?browser=mobile
  • Cookie: remembers the user's choice
  • Version switcher: tplMobileDetectSwitch chunk from the package
  • PHP API: MobileDetect service for plugins and snippets

Requirements ​

RequirementVersion
MODX Revolution2.8+ or 3.x
PHP8.2+
pdoToolsoptional; required for Fenom blocks and the | mobiledetect modifier

Detection uses User-Agent and HTTP headers. "Desktop site" mode in a mobile browser may return incorrect results.

Installation ​

  1. Install via Extras → Installer (modstore.pro, free)
  2. Ensure plugin MobileDetect is enabled (md_disable_plugin = No)
  3. Manage → Clear cache

After install:

ElementPurpose
Plugin MobileDetectHTML tags, Fenom, mobiledetect.device placeholder
Snippet MobileDetectConditional output via :is/:then
Chunk tplMobileDetectSwitchDesktop / tablet / mobile / auto links

The mobiledetectlib library is bundled in transport. Do not run composer install on the server.

Output methods ​

#MethodWhen to use
1Fenom | mobiledetectBest with pdoTools: code in false branches does not run
2Fenom blocks {mobile}, {phone}, …Readable markup in Fenom templates
3Snippet [[!MobileDetect]]Without Fenom, in any MODX context
4HTML tags <standard>, <tablet>, <mobile>Cache-friendly; MODX tags inside blocks parse before filtering

Details: Integration.

SectionDescription
Quick startFirst integration in 5 minutes
System settingsmd_* keys
MobileDetect snippet&input parameter
IntegrationFenom, HTML tags, PHP API
TroubleshootingCache, pdoTools, upgrade from 2.0.x

History ​

Originally written by Vasily Naumkin as a tutorial on bezumkin.ru. Current version 2.1.0-pl is maintained at modx-pro/MobileDetect.