An important principle of all content management systems (CMS) is the separation of content from presentation. The content is stored in a file system and/or a database. The presentation varies on the target medium and can be any markup language like HTML, XML, any file format like DOC, ODT or PDF.
Joomla is a Web Content Management System (WCMS). It consists of the Joomla! platform with the Joomla CMS build on top. It offers the possibility to manage, create, edit, publish and delete content via a web browser. The content is stored in files and in a database.
In the past and of course still today, many people are browsing the web using a personal computer (PC). The screen of a PC can have different screen sizes and screen resolutions and it is connected to a mouse and a keyboard as "human interface devices" to navigate on websites.
What is changing is the product behind the word PC. A mobile device like a tablet or a smartphone is a much more personal device compared to the "traditional" idea of a personal computer with mouse and keyboard. Laptops with a touchpad and a keyboard are bridging the gap. Traditional PC's will more or less disappear!
A mobile device does not need a separate keyboard and a mouse anymore. You can navigate by touching the screen, point to objects and drag them around.
Such a device
- can see (with one or more cameras)
- can hear (with its mikrophone)
- knows where ist is (with its GPS sensor)
- knows most of your contacts
- knows most of your passwords
- and even listens and talks with you (Siri at the iPhone).
To be able to enter text, mobile devices offer a displayed touchable keyboard and this works well!
What does this mean for the "good old" Joomla?
So far Joomla! cannot listen and see, don't know where the visitor is located and of course, it cannot talk to you!
Is that true?
Well ... if you look at the existing Joomla 2.5 core - Yes!
If you search the Joomla extension directory you'll find many extensions that could profit from the standard features of a mobile device! These three extensions are just substitutes for location based services, video and image recording
- Sun Time is calculating the sunrise/sunset time for any place on the planet but you have to enter your location.
- vpchromeabc collects video content in a nice way but cannot record
- TwoJToolBox is a nice image viewer but cannot take pictures
The lack of features is not only the problem of Joomla, it is a general lack of "good old" websites.
Since 2011, the Joomla platform exists and it is possible to build web applications based on this platform. The Joomla CMS was the first application based on the platform but others are possible, e.g. Square One CMS and Molajo.
With the standardization of HTML5 in 2014 this situation will change rapidly.
HTML5 includes detailed processing models to encourage more interoperable implementations, it extends, improves and rationalises the markup available for documents, and introduces markup and application programming interfaces (APIs) for complex web applications. (Wikipedia)
HTML5 contains features like
- the canvas element for immediate mode 2D drawing.
- offline web applications
- an API for writing to files from web applications
- web storage
- the handling of file uploads and file manipulation
Mobile Content Management Systems
Mobile content management systems (MCMS) should support additional features such as:
Multi channel content delivery (machine-readable web)
It should be possible to publish XML and an application which takes this XML and delivers it to mobile devices.
It should be also possible that the mobile application queries the MCMS directly. The MCMS responds with XML that is rendered and displayed by the mobile device. The evolution of this feature went from service-oriented architecture (SOAP, XML-RPC) to resource-oriented architecture (Representational State Transfer - REST).
Specialized templating system (human-readable web)
The templating system is used too to deliver the content to a mobile device. Mobile CMS templates must be adapted to a very wide range of target devices with different capacities and limitations.
There are two approaches to adapt templates:
- multi-client: possible to see all versions of a site at the same domain (example.com), and templates are presented based on the device client used for viewing.
- multi-site: displays the mobile site on a targeted sub-domain (mobile.example.com, m.example.com).
Location based content delivery
This feature is important because it did not exist before inside a CMS. Depending on where you are, a MCMS can be used for e.g.
- recommending events in a city
- requesting the nearest business or service, such as a restaurant
- receiving alerts, such as notifications of a sale on gas or warning of a traffic jam
- location-based mobile advertising