PHPackages                             silverstripe/mobile - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. silverstripe/mobile

AbandonedSilverstripe-module[Utility &amp; Helpers](/categories/utility)

silverstripe/mobile
===================

The mobile module provides detection for mobile devices, and can serve a different SilverStripe theme to them.The module can either use redirection to a separate mobile domain, or serve mobile optimized content under the same URLs.

0.7.0(10y ago)359.8k33[6 issues](https://github.com/silverstripe-archive/silverstripe-mobile/issues)[4 PRs](https://github.com/silverstripe-archive/silverstripe-mobile/pulls)1BSD-3-ClausePHP

Since Jan 4Pushed 6y ago16 watchersCompare

[ Source](https://github.com/silverstripe-archive/silverstripe-mobile)[ Packagist](https://packagist.org/packages/silverstripe/mobile)[ RSS](/packages/silverstripe-mobile/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (4)Used By (1)

Mobile Module
=============

[](#mobile-module)

[![Build Status](https://camo.githubusercontent.com/5fb26bab206bdcf52b8828c0fc65a9f32c9a0dc25c70613f4dae9c0d2a7835ea/68747470733a2f2f7365637572652e7472617669732d63692e6f72672f73696c7665727374726970652f73696c7665727374726970652d6d6f62696c652e706e673f6272616e63683d6d6173746572)](http://travis-ci.org/silverstripe/silverstripe-mobile)

**Please note: this module is no longer actively maintained.**

Overview
--------

[](#overview)

The mobile module provides detection for mobile devices, and can serve a different SilverStripe theme to them. The module can either use redirection to a separate mobile domain, or serve mobile optimised content under the same URLs. It includes a default "blackcandymobile" theme to demonstrate the effects.

The codebase relies on server-side device detection based on user agent strings, which is an [unreliable](http://www.brettjankord.com/2013/01/10/active-development-on-categorizr-has-come-to-an-end/) way to determine if a device is considered to be "mobile".

The W3C recommends a ["One web" approach](http://www.w3.org/TR/mobile-bp/#d0e347)that uses ["Responsive Design"](http://www.alistapart.com/articles/responsive-web-design/)to adapt content, rather than create isolated mobile experiences under their own domain. Most of the work on mobile optimization will be in client-side techniques like JavaScript and CSS (e.g. through media queries).

Responsive design is not covered by this module, and can be achieved with standard SilverStripe functionality.

The module also exposes this state in SilverStripe controllers so custom logic and CSS/JavaScript includes can be adapted to mobile usage.

Maintainer Contact
------------------

[](#maintainer-contact)

- Sean Harvey (Nickname: halkyon, sharvey) &lt;sean (at) silverstripe (dot) com&gt;
- Will Rossiter (Nickname: wrossiter, willr) &lt;will (at) silverstripe (dot) com&gt;

Requirements
------------

[](#requirements)

- SilverStripe 3.1 or newer

Installation
------------

[](#installation)

Unpack and copy the mobile folder into your SilverStripe project.

Run "dev/build" in your browser, for example: ""

A new theme called "blackcandymobile" will be created in your themes folder after invoking the database (dev) build. This theme is a good starting point which you can modify to create your own mobile theme.

If the themes folder can't be written to by the web server during dev/build, please manually copy "blackcandymobile" into your themes folder from the mobile folder.

Alternatively, the module contains a "jquerymobile" sample theme which creates a basic navigation interface through [jQuery Mobile](http://jquerymobile.com). To use this theme, copy it to `/themes` in the same way, and set it in your `SiteConfig` as described below.

Configuration
-------------

[](#configuration)

- SS2.4: In the CMS, browse to the "Pages" tab and click the root node of the site tree to access the SiteConfig settings.
- SS3: In the CMS, browse to the "Settings" tab on the left navigation bar to access the SiteConfig settings.

Once opened, there's a "Mobile" tab which exposes the configuration options of the mobile module.

These options are quite simple. One set of radio buttons controls the behaviour of the mobile site, and there's text input fields to enter which domain you want to act as the mobile, and which is the full site, so that redirection can occur when a user accesses your site on a mobile device.

There's also a dropdown of all themes on the site. The theme chosen here will be the one that mobile users of your site will see.

Please keep in mind that the mobile domain must point to your site before it will work.

### Search Engine Optimization

[](#search-engine-optimization)

The module follows [Google's recommendations](http://googlewebmastercentral.blogspot.com/2011/02/making-websites-mobile-friendly.html)by using a 301 HTTP redirection when using the module in "domain redirection" mode. When using the same URLs, but different themes for mobile and non-mobile content, Google will detect this change by using a different user agent, and index accordingly.

Limitations
-----------

[](#limitations)

- No fine grained mobile browser detection. There is only a way to detect the device in general, e.g. Android or iPhone, but not the browser and features of the device
- Only tested on Android and iPhone devices. Other devices NOT tested

Future enhancements
-------------------

[](#future-enhancements)

- Search form in the default theme
- Integrate with subsites module to serve different content for a mobile site
- Device feature detection e.g. "Does this device support SSL?" or "Does this device support XHTML?" for progressive enhancement
- Dynamic image insertion and resizing via HTML5 data attributes

###  Health Score

35

—

LowBetter than 80% of packages

Maintenance17

Infrequent updates — may be unmaintained

Popularity33

Limited adoption so far

Community29

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~197 days

Total

3

Last Release

3394d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b0cba8b534e20e6ab4fff555a97b237a18436ebca1446fc0b29c8a8b504038b9?d=identicon)[GuySartorelli](/maintainers/GuySartorelli)

![](https://avatars.githubusercontent.com/u/111025?v=4)[Ingo Schommer](/maintainers/chillu)[@chillu](https://github.com/chillu)

---

Top Contributors

[![chillu](https://avatars.githubusercontent.com/u/111025?v=4)](https://github.com/chillu "chillu (19 commits)")[![dhensby](https://avatars.githubusercontent.com/u/563596?v=4)](https://github.com/dhensby "dhensby (7 commits)")[![wilr](https://avatars.githubusercontent.com/u/101629?v=4)](https://github.com/wilr "wilr (7 commits)")[![lozcalver](https://avatars.githubusercontent.com/u/1655548?v=4)](https://github.com/lozcalver "lozcalver (5 commits)")[![halkyon](https://avatars.githubusercontent.com/u/138450?v=4)](https://github.com/halkyon "halkyon (5 commits)")[![vikas-srivastava](https://avatars.githubusercontent.com/u/1092931?v=4)](https://github.com/vikas-srivastava "vikas-srivastava (2 commits)")[![mateusz](https://avatars.githubusercontent.com/u/118653?v=4)](https://github.com/mateusz "mateusz (2 commits)")[![marijnkampf](https://avatars.githubusercontent.com/u/699259?v=4)](https://github.com/marijnkampf "marijnkampf (1 commits)")[![tractorcow](https://avatars.githubusercontent.com/u/936064?v=4)](https://github.com/tractorcow "tractorcow (1 commits)")[![madmatt](https://avatars.githubusercontent.com/u/893117?v=4)](https://github.com/madmatt "madmatt (1 commits)")[![simonwelsh](https://avatars.githubusercontent.com/u/125915?v=4)](https://github.com/simonwelsh "simonwelsh (1 commits)")[![robbieaverill](https://avatars.githubusercontent.com/u/5170590?v=4)](https://github.com/robbieaverill "robbieaverill (1 commits)")

---

Tags

silverstripemobile

### Embed Badge

![Health badge](/badges/silverstripe-mobile/health.svg)

```
[![Health](https://phpackages.com/badges/silverstripe-mobile/health.svg)](https://phpackages.com/packages/silverstripe-mobile)
```

###  Alternatives

[silverstripe/multi-domain

Allows multiple domains to access one CMS instance, mapping them to different sections of the hierarchy

141.6k](/packages/silverstripe-multi-domain)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
