Manage blogs on AIX

Open source Content Management Systems options

AIX® provides an ideal environment for blogs and for the Web Content Management System (CMS) tools running those blogs because of its Web and text-processing power. You get the best of both worlds by combining open source CMS and AIX for a complete and ready-to-use content management tool with extensive support from the open source community, along with a secure and reliable server with high availability, scalability, and enterprise-level support from IBM®. This article introduces some of the best CMS solutions for AIX available from the open source community, and helps readers understand the important differences among them. The article also provides a guideline for system architects and developers to help them choose the CMS that best fits their needs.

Arun Chhatpar (arun@machinfotek.com), Founder and Chief Consultant, MachInfotek

Arun Chhatpar is a regular contributing author to IBM developerWorks, and he has more than 10 years of software design and development experience encompassing decision analytics, business rules management systems, core Java, UI frameworks and workflow orchestration. He is also a Sun Certified Enterprise Architect and business rules expert.



24 February 2009

Also available in Chinese

Defining CMS

Time to market matters, period! And in today's fast-paced Internet world, this is more evident than ever. There were times when a corporate press release had to go thorough numerous steps to get published on the company Web site. But that is changing and the technology that is enabling that is Content Management Systems (CMS).

A CMS is a system that supports the collection, creation, administration, publication, and distribution of information. A good CMS allows non-technical users to add and edit the content without needing to know any HTML or to have any Web design knowledge.

From a business point of view, a CMS offers the following:

  • Direct access to content. It allows the content owners to access, publish, and manage their content directly through an easy Web interface.
  • Instant publishing. It allows for quicker updates of news and information.
  • Accountability. Keeping track of changes is one of the inherent features of a good CMS tool.
  • Standardization. It provides a pre-defined platform for your users to follow corporate standards for creating and managing content. The Web-based publishing feature allows individuals to use a template or a set of templates approved by the organization, as well as wizards and other tools to create or modify Web content.

Technically, a CMS stores all of the content in a database. It keeps the presentation layer separate from the application layer. A CMS system indexes all data within an organization and lets individuals search for data using keywords. The CMS is designed and can be configured to allow content updates to be escalated to different levels automatically. This makes content management systems highly scalable.

One of the main challenges AIX adminstrators face is maintenance and upgrades of different software running on their systems. The good news for them is that the tools discussed in this article are easy to install and maintain. They only require Apache, PHP, and MySQL to run. And if you are running AIX in your enterprise setup, it is highly likely that these three applications are installed on your AIX system and are already being managed and maintained. You can find pre-complied binaries of each of these applications for AIX on dozens of online sites. You can find some good links in the Resources section to get started on these.


Open source options for AIX platform

For the last few years, the adoption of open source software has been on the rise and it has changed how enterprises look at operating systems, application servers, and databases. Now the benefits of open source are being realized in CMS also, which traditionally had been a vendor-controlled world of expensive licensing and closed APIs. Some well-known players here include Vignette and Interwoven, which provide enterprise-level products. Those systems are usually bulky and difficult to use. At the other end of the spectrum are blogging platforms such as WordPress, which are renowned for being fairly lightweight and easy to use.

Typically, your choice of CMS for your AIX setup will be driven by your project requirements. And there are many open source options when it comes to CMS. To keep things simple for this article, I chose CMS tools that can be easily integrated into your existing AIX setup. And if your setup is different, it should be easy to install the core applications needed to run any of these tools. As mentioned, the core applications for this article use Apache Web Server, the PHP programming language, and MySQL.

The main objective of this article is to get you started with a simpler CMS that supports some basic features like managing the Web content and blogs, and one which can be easily deployed on the AIX platform. This article looks at three such tools that provide easy and extensive support for this functionality: WordPress, Drupal, and Joomla!.


WordPress

WordPress has grown to be one of the most prominent blogging software platforms with one of the biggest communities in both the blog and CMS worlds. It is an open source blog publishing application written in PHP. While WordPress is known more commonly as a blogging platform, it is in many ways a CMS. At its core, the WordPress system allows you to create and manage the content that is created within these blogs. WordPress also comes bundled with a lot of CMS features.

WordPress is the official successor of another Web publishing application called b2Cafelog. The application architects of WordPress claim that this application was born out of a desire for an elegant, well-architectured personal publishing system. It is also built upon strong technologies such as PHP and MySQL and licensed under GPL, which has much-improved security and enhanced performance on the AIX platform.

The MySQL database server provides the ultimate in scalability on AIX. This, coupled with the AIX PowerVM™ Live Application Mobility, allows any application, including a running instance of a MySQL database inside of a Workload Partition, to be moved from one system to another without restarting the applications. This is a key tool for AIX adminisrators for managing planned outages or workload balance between servers.

Figure 1 shows how the home page of the site using Wordpress looks like after being installled on AIX.

Figure 1. Default home page of WordPress application
Default home page of WordPress application

WordPress features

An easy installation, user management, highly abstracted presentation layer, built-in RSS support, spam protection, archiving, and searching are just a few features of WordPress. Here is some more information on some of these open source goodies:

  • Easy installation and upgrade. WordPress' famous five-minute install can't be beaten for simplicity and ease of use. You just have to follow a few steps from the administrative console and it's done; it's that easy. Upgrading your weblog to the latest version of WordPress is easy, too, and it should take less time than the installation! All this is based on Apache, PHP, and MySQL; binaries for these are easily available for the AIX platform (see Resources).
  • Template-based design. Templates make it possible to abstract and easily change the look and feel of your Web pages, and good developers love to work with templates. At its core, WordPress uses templates to generate the pages dynamically. You can control the presentation of content by editing these templates using the Template Editor tool and the Template Tags.
  • WordPress Themes. WordPress comes with a full theme system, which makes designing everything from the simplest blog to the most complicated webzine a piece of cake, and you can even have multiple themes with totally different looks that you switch with a single click.
  • Full user management with complete publishing controls. WordPress has a built-in user registration system that (if you choose) can allow people to register and maintain profiles and leave authenticated comments on your blog. You can optionally close comments for non-registered users. There are also plugins that hide posts from lower-level users. WordPress also comes with a friendly administrative back end. Although different from those used by Drupal and Joomla!, it seems to take less time to learn to use WordPress, and fewer trips to forums and tutorials to figure things out.

WordPress weaknesses

WordPress is not a complete CMS tool. WordPress is the best tool if all you want to do is provide blogs for your site. As a standalone blog tool, it is the best of breed by most measures and its usability is its key strength, particularly easy customization and personalized themeing allows for creating individually customized Web pages.

WordPress is slower than Drupal and Joomla!, the other two CMS tools discussed in this article. There are ways to overcome this; for example, you may manually optimize the database queries, clean some code, compress CSS, and implement caching. Some of these are part of Drupal and Joomla!'s architecture and that's what makes them faster.

Many of the WordPress templates also look so similar that it is sometimes easy to recognize a WordPress site simply by the layout and theme. This is changing, with better templates appearing almost daily.

If you need more features, such as allowing your users to create and manage more diversified content such as personalized Web pages or corporate communities, the next tool, Joomla!, is a better fit.


Joomla!

Joomla! started life as an open source CMS called Mambo. In August 2005, a split took place between the core developers of Mambo and the owners of the Mambo name. The developers decided to continue the development of this software under the name Joomla! and most of the community that previously supported Mambo have now thrown their weight behind the new product.

Joomla! is a powerful open source CMS for publishing content online. It is feature rich and is being used for building professional Web sites easily. Similar to the Firefox browser, the core system can be extended using easily installable add-ons authored by the developer community. The comprehensive internationalization feature of Joomla! 1.5.x supports right to left languages (such as Hebrew or Arabic) and extended character sets. Dozens of language packs can be separately downloaded.

The default home page after Joomla! 1.5.9 installation looks as shown in Figure 2.

Figure 2. Joomla! home page after default installation
Joomla! home page after default installation

Joomla! features

Joomla! is both free and fully open source software (the Joomla! group is actually trying to make it GPL-compliant, too). This ensures steady support from the active developer's community. Joomla! also has a large and growing user base, which is very helpful if you get stuck. You should have little trouble finding answers to your problem from one of the experts in the forum threads. Here are some of the key features that make Joomla! such a powerful tool:

  • CMS in a true sense. Joomla! easily manages user logins and registrations, along with the ability to give end users the control to upload and edit information on their own sites without system administrators having to continuously be the bottleneck to providing up-to-the-minute information to their clients.
  • Flexibility. It is very easy to change the overall look and feel of your Web site using many multitudes of professionally and commercially created themes. All it takes is a few clicks from the administrative console. In addition, the headers and information can then be further customized to give the user just what he is looking for on his site.
  • Modular architecture. What makes Joomla! such a strong CMS is its extensible application interface. Joomla! supports extensions in three forms: plugins, components, and modules. Installing or removing these extensions is easy, too, and you have an option to automatically preserve previous entries from the database, so you do not need to bother backing up or restoring the SQL database. If you just feel like removing a component and installing a better one, it is no big deal.
  • Templates-based design. A single site can handle multiple templates, and each one is quite easily customizable. Plus, you have option to choose from hundreds of really nice templates that have been professionally designed. Drupal and WordPress lag far behind in this regard. More large commercial enterprises are actively developing and selling Joomla! templates than for Drupal and WordPress.
  • Search-engine-friendly URLs. Older versions required various additional components. The Joomla! 1.5.x series makes this much more transparent.

Joomla! terms and what they mean

Plugins are background extensions that extend Joomla! with new functionality. Some top-rated plugins for Joomla! include: Googlemaps, BIGShot google Analytics, Linkr for linking articles, and WikiBot.

Components allow Web masters to perform such tasks as build a community by expanding user features, backup a Web site, translate content, and create URLs that are friendlier to search engines.

Modules perform such tasks as displaying a calendar or allowing custom code like Google AdSense to be inserted within the base Joomla! code.

Joomla! weaknesses

Joomla! is not particularly secure "out of the box." It's a common mistake to install Joomla! and assume the resulting Web site is secure. Joomla!'s security can be substantially improved if the administrator takes time to do some recommended configuration changes (There is a link to Joomla!'s security check list in the Resources section).

A significant drawback of Joomla! is that there is no tagging of posts. A post can only go into one category. Without any third-party products, Joomla! cannot list an article in more than one category, so creating rich, contextual content is very challenging.

Drupal

Drupal is an open source CMS, designed with flexibility at its core. It is considered as one of the most important platforms for PHP. Drupal has a large fan base of professional developers that use the software for creating all sorts of personal and commercial sites.

Drupal can support many types of features with ease, from shopping carts to user profiles, calendars, galleries, and more. Drupal is also robust and safe. With over 700 developers working on the latest version of the core, a platform like Drupal has endured rigorous testing and deep scrutiny before it is allowed to become part of your Web site.

Along with being very cost effective, Drupal allows you to develop complex sites in a fraction of the time it would take using other technologies. With thousands of community-contributed modules extending the flexibility of Drupal, chances are that Drupal already supports whatever features you or your clients might need. The default screen after the easy installation setup looks as shown in Figure 3.

Figure 3. Drupal's default home page after out-of-the-box installation
Drupal's default home page after out-of-the-box installation

Drupal features

Along with lots of standard CMS features like presentation-layer abstraction using themes and templates, an embedded searching module, user creation and management, version control for all published content, syndication, and RSS feeds, and logging and reporting, there are some features that make Drupal an advanced Web 2.0 CMS:

  • SEO-friendly URLs. Drupal uses Apache's mod_rewrite to enable customizable URLs that are both user- and search-engine friendly. This option enables any node to have a custom keyword rich title that is easy for both users and search engines to follow. By adding on another popular module called the pathauto module, you can have Drupal automatically create URLs of your choice based off a number of parameters such as the user who submitted it, the date it was submitted, the title of the article, and things like this.
  • Easy-to-use administrative interface. The administration in Drupal is extremely powerful and feature rich. From this section you can control virtually all aspects of your Drupal site easily and efficiently. There are number of logging reporting features that display information such as the number of visitors, what sites your visitors are coming from, and a list of all the errors, should any occur.
  • Roles-based robust user management. Drupal administrators don't have to set up permissions for each user. Instead, they assign permissions to roles and then group like users into a role group.
  • Rich Web-forms API. There is a easy-to-use module in Drupal called the Webform that allows you to create virtually any type of form. The good thing about this module is that all data collected in these forms is automatically stored in the database and emailed wherever the administrator would like to. This module also comes with a pre-built spam control and security features.
  • Built-in Blog API. Drupal's built-in blog system is very easy to use and customize. The Blog API module also enables a post to be posted to a site using external GUI applications. Many users prefer to use external tools to improve their ability to read and post responses in a customized way. This API provides users the freedom to use the blogging tools they want but still have the blogging server of choice. It supports several XML-RPC-based blogging APIs such as the Blogger API, MetaWeblog API, and most of the Movable Type APIs.
  • Caching. Built-in caching is one of the most promising features of Drupal. Busy Drupal sites may consider caching their pages to lighten the load on their server and speed up page-generation times. These sites can reduce the work required to generate pages by enabling Drupal's page cache through the administration console.
  • Security. Drupal is secure when installed, without doing anything special.

Drupal terms and what they mean

Here are is more information about Drupal terms:

  • Node: This is, in simple terms, a unit of content. It may for example be a "page," "story," "book page," or "blog entry." These different types of content are also referred to as "Content types".
  • Theme: This is the way your site is displayed (or rendered) to the end user. The graphic look, layout, and colors of Drupal sites are defined by the themes.
  • Block: This is a "container" for pieces of content on your displayed page. You may also have "Recent posts," "Sponsor links," or "Who's online."
  • Menu: A menu displays a list of links. Drupal menus are often located in a column on the left. For example, your navigation menu.

Drupal weaknesses

Usability is an issue with Drupal. Its administrative back end is still somewhat disjointed, requiring that you know where to go to make particular changes, and sometimes those changes require multiple steps in separate places to accomplish your goal.

Drupal may be powerful, but it is also complex. The key is overcoming its steep initial learning curve.

CMS comparison

The CMS Matrix shown in Figure 4 allows you to select from a huge variety of content management systems and generate a side-by-side comparison of features.

Figure 4. CMS Matrix comparison of Drupal, Joomla!, and WordPress
CMS Matrix comparison of Drupal, Joomla!, and WordPress

If Google Search Trend, as shown in Figure 5, is any indication, WordPress and Joomla! are more popular than Drupal. Conversely it might also mean that the Drupal system is more stable and has fewer issues for people to search answers for.

Figure 5. Google Search trend
Google Search trend

Which CMS is right for you?

Let's summarize the different CMS options that are available to AIX administrators. AIX provides a secure and robust shell to run any of these applications. The only thing they need to worry about is the actual customization of the look and feel for the user interface.

If you have a simple personal or company site that would primarily be used for blogging and where you don't need to maintain a large library of documents or make sales online, consider WordPress. Many attractive WordPress themes are available for both personal and business-style sites.

Joomla! is the preferred choice for small business and personal users who want a professional-looking site that is simple to deploy and easy to maintain. Joomla!'s high extensibility and large user community has allowed it to be good enough to deliver a robust enterprise-level corporate site, as well. If you need an e-commerce solution or an online library, Joomla! may be the ticket. Visit the Joomla! Extensions page to begin investigating third-party products to meet your needs. There are many Joomla! themes available.

Drupal meets the needs of different types of Web sites from community to news portals, from corporate sites to educational institutions, from media sites to international sites. So if you can invest some time in customizing your template and you need a secure, well-maintained, powerful codebase, Drupal may fit your needs well. There are many Drupal themes available, as well as a large number of powerful Drupal modules.


Summary

AIX provides a solid operating system for running your enterprise applications. It is also ideal for your CMS because it allows you to easily and effortlessly expand and scale as your content management needs grow. And what administrator wouldn't like the Live Application Mobility feature of AIX 6 that allows for planned outages, software upgrades, or changing the load balancing configuration of your online systems without affecting the server availability at all?

The three CMS tools discussed in this article clearly show that the open source community has matured to great levels and has grown stronger over the years. It is also evident that whatever your blogging and content management needs be, there is a solid open source tool already available for it; you might have to customize it a little bit though. I hope this article was enough to get you started on the CMS bandwagon. So hop on and remember to share what you learn back with the community.

Resources

Learn

Get products and technologies

  • Drupal: An open source content management system.
  • Joomla: Home of the Joomla CMS.
  • Wordpress: WordPress CMS and community portal.
  • Build your next development project with IBM trial software, available for download directly from developerWorks.

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into AIX and Unix on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=AIX and UNIX, Open source
ArticleID=372150
ArticleTitle=Manage blogs on AIX
publish-date=02242009