Extension:MobileFrontend

Installation

 * 1) Copy the files from the SVN repository to your server (see the "Download" links in the sidebox).
 * 2) Add this link to the bottom of LocalSettings.php:

Minified JS
Minified JS files are not included with the extension, and as such, need to be created for yourself (or stolen from elsewhere if possible).

There is a Makefile to minify these files using yuicompressor, but you also need Java runtimes installed. This can be done by running:

You can turn minified javascript off in  LocalSettings.php using $wgMFConfigProperties

Configuration settings
The following variables can be defined in LocalSettings.php after calling require_once("$IP/extensions/MobileFrontend/MobileFrontend.php"):

{| class="wikitable" ! Setting name ! Default value ! Description
 * $wgMFConfigProperties
 * Enable/disable beta mode
 * $wgMobileFrontendLogo
 * , defaults to $wgExtensionAssetsPath . '/MobileFrontend/stylesheets/images/mw.png'
 * Url to the logo used in the mobile view. Should be 35 x 22px.
 * $wgAppleTouchIcon
 * , means none
 * Url to the Apple touch icon
 * $wgMFMinifyJS
 * turns off minified javascript
 * Disable/enable minified javascript. When off the latest development off javascript will be used rather than the possibly more stable minified code.
 * $wgMobileUrlTemplate
 * $wgMFRemovableClasses
 * Make the classes, tags and ids stripped from page content configurable. Each item will be stripped from the page. The extension adds some classes by default.
 * $wgMobileRedirectFormAction
 * URL for script used to disable mobile site (protocol, host, optional port; path portion) e.g., http://en.wikipedia.org/w/mobileRedirect.php
 * $wgMFCustomLogos
 * Makes the logos configurable. Example:  Note that 'copyright' controls the image shown in the footer of the mobile page.
 * $wgMFExtendOpenSearchXml
 * Whether this extension should provide its excerpts to OpenSearchXml extension
 * $wgMobileFrontendFormatCookieExpiry
 * Make the classes, tags and ids stripped from page content configurable. Each item will be stripped from the page. The extension adds some classes by default.
 * $wgMobileRedirectFormAction
 * URL for script used to disable mobile site (protocol, host, optional port; path portion) e.g., http://en.wikipedia.org/w/mobileRedirect.php
 * $wgMFCustomLogos
 * Makes the logos configurable. Example:  Note that 'copyright' controls the image shown in the footer of the mobile page.
 * $wgMFExtendOpenSearchXml
 * Whether this extension should provide its excerpts to OpenSearchXml extension
 * $wgMobileFrontendFormatCookieExpiry
 * Makes the logos configurable. Example:  Note that 'copyright' controls the image shown in the footer of the mobile page.
 * $wgMFExtendOpenSearchXml
 * Whether this extension should provide its excerpts to OpenSearchXml extension
 * $wgMobileFrontendFormatCookieExpiry
 * Whether this extension should provide its excerpts to OpenSearchXml extension
 * $wgMobileFrontendFormatCookieExpiry
 * $wgMobileFrontendFormatCookieExpiry
 * $wgMobileFrontendFormatCookieExpiry

Extended action=parse
action=parse receives the following extra parameters:
 * mobileformat={html|wml}: Return rendered page in a mobile format, HTML for modern phones or WML for dumb phones.
 * noimages: Disable images in mobile output.
 * mainpage: Apply mobile main page transformations.

Example:

[//en.wikipedia.org/w/api.php?action=parse&page=Therion_(band)&mobileformat=html&prop=text&format=jsonfm api.php?action=parse&page=Therion_(band)&mobileformat=html&prop=text&format=json]

 {	"parse": { "title": "Therion (band)", "text": "\n

Same request for XML: [//www.mediawiki.org/w/api.php?action=mobileview&page=Extension:MobileFrontend/Example&sections=0&prop=text|sections&format=xmlfm api.php?action=mobileview&page=Extension:MobileFrontend/Example&sections=0&prop=text|sections&format=xml]

prop=extracts
Returns article extracts. Two formats are available: cleaned up HTML and plain text.

Parameters:
 * exchars: Length of extracts in characters.
 * exsentences: Number of sentences to return.
 * exintro</tt>: Return only zeroth section.
 * sectionformat</tt>: What section heading format to use for plaintext extracts:
 * wiki</tt> — e.g., == Wikitext ==
 * plain</tt> — no special decoration
 * raw</tt> — this extension's internal representation: <ASCII 1><ASCII 2> <ASCII 2><ASCII 1>.


 * exlimit</tt>: Maximum number of extracts to return. Because excerpts generation can be slow, the limit is capped at 20 for intro-only extracts and 1 for whole-page extracts.
 * explaintext</tt>: Return plain-text extracts.
 * excontinue</tt>: When more results are available, use this parameter to continue.

Example:

[//en.wikipedia.org/w/api.php?action=query&prop=extracts&exchars=100&titles=Earth&format=jsonfm api.php?action=query&prop=extracts&exchars=100&titles=Earth&format=json]

WMF properties
On Wikimedia Foundation run properties, we use Varnish caching servers to check the user agent of your device. If your user agent appears to be coming from a mobile device, the Varnish servers will set an appropriate 'X-Device' header for your request, and you will be redirected to the MobileFrontend version of an article. Alternatively, you can click 'Mobile view' in the footer of an article or append "useformat=mobile" to the query string to view an article in the mobile view.

If you are viewing the mobile version of article but wish to see the desktop-version of that article, you can click 'View this article on regular <SITENAME>' to switch back.

If you want to permanently disable the mobile view for your web browser, you can click 'Permanently disable mobile site', which will set a cookie instructing the WMF servers to always display the desktop version of the site.

Non-WMF properties
For non-WMF properties, you can either set up your configuration to mimic how things are done at the WMF (doing device detection at the proxy layer and setting specific X-Device headers), or you can simply use "?useformat=mobile" to switch an article to use the mobile view.

WMF cluster deployments
See Extension:MobileFrontend/Deployments for deployment information on past and upcoming deployments of MobileFrontend to the WMF cluster.