Mobile Gateway

MediaWiki Mobile is the mobile interface for Wikimedia projects (only Wikipedia at the moment), run by Hampton Catlin and written in Ruby.

Behind the scenes
The mobile interface can be reached by visiting langcode.m.wikipedia.org – a mobile interface for every Wikipedia we have already exists, even if there is no translation. People are sent to the mobile interface by explicitly requesting it (by visiting m.wikipedia.org) or through automatic redirection based on User-Agent. The mobile interface of MediaWiki is an application that reformats a Wikipedia article into something more suited for a range of mobile devices. This page gives some information about how to make sure the mobile interface works best for your project.

Translations
The mobile application requires separate translations from the MediaWiki PHP software. The translations are done trough the Translatewiki community, and by the last count there are only 25 messages that you will need to translate. If you want the application to be usable in your language, please visit Translatewiki and volunteer your services.
 * Currently only the content languages are supported by the software for interface messages, and you cannot configure your own desired language yet when using mediwiki mobile. (21806).

Mobile homepage
By default, no homepage is configured for the mobile interfaces and only a search interface is provided. In order to create a homepage for a language, two different techniques can be used; Selectors or a Mobile portal.

Selectors
The original method that is used on the English Wikipedia version is to make use of selectors. You add the selectors listed below to the relevant sections of the homepage of the Wikipedia. The software then extracts the sections from the homepage and constructs a mobile homepage for that language. Currently only "Today's featured article" and "In The News" are presented.

The selectors are:

An example of the usage of these CSS ids can be seen in the source of the main page of the English Wikipedia (Go to the page and choose "view source" in your browser. Also see the wikicode). After you have added these IDs to your Wikipedia mainpage, create a ticket in bugzilla. Add the following information:
 * Wikipedia: en.m.wikipedia.org
 * Main page: The name of your local main page. For instance: Portal:Main_page

Mobile portal
An alternative method is to create a dedicated portal page on your Wikipedia. An example for this is the page of the Swedish mobile main page.

When designing a mobile portal you will have to take some things into account.
 * Content first. Mobile devices have little screen real estate. If you put a lot of information before the content, it might be that you will have to scroll one page down to reach it on an iPhone for instance.
 * Be careful with indentation; horizontal screen real estate is even more precious than vertical screen real estate.
 * All used CSS needs to be inline CSS, because the mobile portal does not yet include CSS pages from your project.
 * Tables are stretched to 100% width. Use div floats for images.
 * Keep information and especially images limited. You don't want to drain a persons databundle in one visit.

You will probably want to test the page you have designed. Go to http://language.m.wikipedia.org/wiki/portalpagename and see how it looks. Preferably on a mobile device, but you can also use your browser.
 * The developer tools of Safari allow you to easily set the iPhone user-agent.
 * Open the page in the Opera Mini demo: http://www.opera.com/mini/demo/

After you have created a portal for Mobile Wikipedia, create a ticket in bugzilla. Add the following information:
 * Wikipedia: en.m.wikipedia.org
 * Main page: The name of your local portal page. For instance: Portal:Main_page_(mobile)

Redirecting users
If you want that visitors of Wikipedia, that are using a supported mobile device, are automatically redirected to the mobile portal (such as on the English Wikipedia), than you will have to add a piece of JavaScript to your Wikipedia's MediaWiki:Common.js page.

Make sure to adapt the  variable in this code to match the main page of your language and that   matches the Home for your mobile main page portal. You also might want to create your own version of Enable mobile version. If visitors have chosen to disable redirecting permanently, but change their mind, they can use this page to reenable the automatic redirect to the mobile version.

More information
If you have a question, just ask Hampton Catlin or Derk-Jan Hartman.


 * IRC channel, [mailto:mobile@wikipedia.org E-mail], Twitter

Development
Just drop in on the IRC room. The code is available to anyone. Just get the repos from and start hacking!
 * Report a new bug and List of known bugs