What Is a Content Management System?
What exactly is a content management system (CMS)? To better understand the power of a CMS, you need to understand a few things about traditional web pages.
Conceptually, there are two aspects to a web page: its content and the presentation of that content. Over the past decade, there has been an evolution in how these two pieces interact:
- Static web pages—The content and presentation are in the same file
- Web pages with Cascading Style Sheets (CSS)—The content and presentation are separated.
-
Dynamic web pages—Both content
and presentation are separated from the web page itself.
A web page is made up of a set of instructions written in Hypertext Markup Language (HTML) that tells your browser how to present the content of a web page. For example, the code might say, “Take this title ‘This is a web page,’ make it large, and make it bold.”
This way of creating a web page is outdated, but an astonishing number of designers still create sites using this method. Pages created using this method have two main drawbacks:
- Difficult to edit and maintain—All the content shown on the page (“This is a web page”) and the presentation (big and bold) are tied together. If you want to change the color of all your titles, you have to make changes to all the pages in your site to do so.
- Large file sizes—Because each bit of content is individually styled, the pages are big, which means they take a long time to load. Most experts agree that large file sizes hurt your search engine optimization efforts because most search engines tend not to completely index large pages.
In an effort to overcome the drawbacks of static web pages, over the past four or five years, more comprehensive web standards have been developed. Web standards are industrywide “rules” that web browsers such as Internet Explorer and Mozilla Firefox follow (to different degrees, some better than others) to consistently output web pages onto your screen. One of these standards involves using Cascading Style Sheets (CSS) to control the visual presentation of a web page. CSS is a simple mechanism for adding
style (for example, fonts, colors, spacing) to web documents. All this presentation information is usually contained in files that are separate from the content and reusable across many pages of a site.
Now the file containing the content is much smaller because it does not contain presentation or style information. All the styling has been placed in a separate file that the browser reads and applies to the content to produce the final result.
Using CSS to control the presentation of the content has big advantages:
- Maintaining and revising the page is much easier. If you need to change all the title colors, you can just change one line in the CSS file.
- Both files are much smaller, which allows the data to load much more quickly than when you create web pages using HTML.
- The CSS file will be cached (saved) on a viewer's local computer so that it won't need to be downloaded from the Web each time the viewer visits a different page that uses that uses the same styling rules.
A CMS further simplifies web pages by creating dynamic web pages. Whereas CSS separates presentation from content, a CMS separates the content from the page. Therefore, a CMS does for content what CSS does for presentation. It seems that between CSS and a CMS, there’s nothing left of a web page, but in reality what is left can be thought of as insertion points, or placeholders, in a structural template or layout.
The “put some content here” instruction tells the CMS to take some content from a database, the “pure content,” and place it in a designated place on the page. So what’s so useful about that trick? It’s actually very powerful: It separates out the responsibilities for developing a website. A web designer can be concerned with the presentation or style and the placement of content within the design layout - the placeholders. This means that nontechnical people can be responsible for the content - the words and pictures of a website - without having to know any code languages, such as HTML and CSS, or worry about the aesthetics of how the content will be displayed. Most CMSs have built-in tools to manage the publication of content.
It’s possible to imagine a workflow for content management that involves both designers and content authors.
A CMS makes the pages dynamic. A page doesn’t really exist until you follow a link to view it, and the content might be different each time you view it. This means a page’s content can be updated and customized based on the viewer’s interactions with the page. For example, if you place an item in a shopping cart, that item shows up on the shopping cart page. It was stored in a database and now gets inserted into the “shopping cart placeholder.” Many complex web applications—for example, forums, shopping carts, and guest books, to name a feware in fact mini CMSs (by this definition).
The Joomla! Community
A large and active community is an important factor in the success of an open source project. The Joomla community is both big and active. The official forum at forum. joomla.org is perhaps one of the biggest forum communities on the Web. In addition, there are many forums on Joomla’s international sites and the respective sites of its third-party extension developers.
Third-Party Extensions Development
Joomla is unique among open source CMSs in the number and nature of the nonofficial developers who create extensions for it. It’s hard to find a Joomla site that doesn’t use at least one extension. The true power of Joomla lies in the astonishing range of extensions that are available.
The nature of Joomla developers is interesting. There are an unusually high proportion of commercial developers and companies creating professional extensions for Joomla. Although open source and commercial development might seem unlikely bedfellows, many commentators have pointed to this characteristic of the Joomla project as a significant contributor to its growth.
Joomla!’s Features
Joomla has a number of “out of the box” features. When you download Joomla from www.joomlacode.org, you get a zip file about 5MB that needs to be installed on a web server. Running an installation extracts all the files and enters some “filler” content into the database. In no particular order, the following are some of the features of the base installation:
- Simple creation and revision of content using a text editor from the main front-end website or through a nonpublic, back-end administration site
- User registration and the ability to restrict viewing of pages based on user level
- Control of editing and publishing of content based on various admin user levels
- Simple contact forms
- Public site statistics
- Private detailed site traffic statistics
- Built-in sitewide content search functionality
- Email, PDF, and print capability
- RSS (and other) syndication
- Simple content rating system
- Display of newsfeeds from other site
The following are some of the most popular extension types:
- Forums
- Shopping carts
- Email newsletters
- Calendars
- Document and media download managers
- Photo galleries
- Forms
- User directories and profiles
To customize your site further, you can easily find highly specialized extensions, such as the following:
- Recipe managers
- Help/support desk management
- Fishing tournament tracking
- AdSense placement
No comments:
Post a Comment