Let’s get started.
We are evaluating a CMS for our Yoga Site. But you may want to build something else. Take a look again at the requirements. Do you need a lot of dynamic modules such as an event calendar, shopping cart, collaboration module, file downloads, social networking, and so on? Or you need modules for publishing and organizing content such as news, information, articles, and so on?
Today’s top-of-the-line Web CMSs can easily work as a portal. They either have a lot of built-in functionality or a wide range of plug-ins that extend their core features. Yet, there are solutions specifically made for web portals. You should evaluate them along with CMS software if your needs are more like a portal.
On the other hand, if you want a simple corporate or personal web site, with some basic needs, you don’t require a mammoth CMS. You can use a simple CMS that will not only fulfill your needs, but will also be easier to learn and maintain.
Joomla! is a solid CMS. But it requires some experience to get used to it. For this article, let’s first evaluate a simpler CMS. How do we know which CMS is simple? I think we can’t go wrong with a CMS that’s named “CMS Made Simple”.
As the name suggests, CMS Made Simple (http://www.cmsmadesimple.org/) is an easy-to-learn and easy-to-maintain CMS. Here’s an excerpt from its home page:
If you are an experienced web developer, and know how to do the things you need to do, to get a site up with CMS Made Simple is just that, simple. For those with more advanced ambitions there are plenty of addons to download. And there is an excellent community always at your service.
It’s very easy to add content and addons wherever you want them to appear on the site. Design your website in whatever way or style you want and just load it into CMSMS to get it in the air. Easy as that!
That makes things very clear. CMSMS seems to be simple for first-time users, and extensible for developers. Let’s take CMSMS to a test drive.
We set up the CMSMS and added some content to it. We wanted to use an image in ourcontent page. To make things simpler, we first uploaded an image. Then we went to the current pages listing. CMSMS shows all pages in the site in a hierarchical display. It’s a simplefeature that makes a content administrator’s life very easy. From there, we went on to createa new page.
CMSMS has a WYSIWYG editor, like so many other CMSs we have seen till now. The content addition process is almost the same in most CMSs. Enter page title and related information,type in content, and you can easily format it using a WYSIWYG editor. We inserted the logo image uploaded earlier using this editor.
CMSMS features extensions to the default WYSIWYG editor. These features demonstrate all of the thinking that’s gone into making this software. The orange palm tree icon appearing on the WYSIWYG editor toolbar allowed us to insert a link to another page with a simple click. We could also insert a dynamic menu from within the editor if needed.
Saving and previewing our site was equally easy.
Notice how intuitive it is to add and manage content. CMS Made Simple lives up to its namein this process. It uses simple terms and workflow to accomplish tasks at hand. Check out the content administration process while you evaluate a CMS. After all, it’s going to be your most commonly used feature!
Hierarchies: How deep do you need them?
What level of content hierarchies do you need? Are you happy with two levels? Do you like Joomla!’s categories -> sections -> content flow ? Or do you need to go even deeper? Most users will find two levels sufficient. But if you need more, find out if the CMS supports it. (Spoiler: Joomla! is only two-level deepby default.)
Now that we have learned about the content management aspect of CMSMS, let’s see how easily we can customize it. It has some interesting features we can use.
We used the global content block feature of CMSMS to insert a product promotion throughout our site. In the process, we learned about templates and also how we could modify them.
Creating a global content block was similar to adding a new content page. We used the WYSIWYG editor to enter content block text. This gave us a special tag. If you know about PHP templates, you will have guessed that CMSMS uses Smarty templates and the tag was simply a custom tag in Smarty.
Smarty Template Engine
Smarty (http://www.smarty.net/) is the most popular template engine for the PHP programming language. Smarty allows keeping core PHP code and presentation/HTML code separate. Special tags are inserted in template files as placeholders for dynamic content. Visit http://www.smarty.net/crashcourse.php and http://www.packtpub.com/smarty/book for more.
Next, we found the template our site was using. We could tell it by name, since the template shows up in a drop down in the add new pages screen as well. We opened the template and reviewed it. It was simple to understand—much like HTML. We inserted our product content block tag after the main content display. Then we saved it and previewed our site.
Just as expected, the product promotion content showed up after main content of all pages.
This shows how easy it is to add global content using CMSMS. But we also learned that global content blocks can help us manage promotions or commonly used content. Even if you don’t go for CMS Made Simple, you can find a similar feature in the CMS of your choice.
Simple features can make life easier
CMS Made Simple’s Global Content Block feature made it easy to run product promotions throughout a site. A simple feature like that can make the content administrator’s life easier. Look out for such simple things that could make your job faster and easier in the CMS you evaluate.
It’s good time now to dive deeper into CMSMS. Go ahead and see whether it’s the right choice for you.
CMS Made Simple (CMSMS) looks very promising. If we wanted to build a standard website with a photo gallery, newsletter, and so on, it is a perfect fit. Its code structure is understandable, the extending functionality is not too difficult. The default templates could be more appealing, but you can always create your own.
The gentle learning curve of CMSMS is very impressive. The hierarchical display of pages,easy reordering, and simplistic content management approach are excellent. It’s simple to figure out how things work. Yet CMSMS is a powerful system—remember how easily we could add a global content block? Doing something like that may need writing a plug-in or hacking source code in most other systems.
It’s the right time for you to see how it fits your needs. Take a while and evaluate the following:
We are done evaluating a simple CMS. Let us now look at the top two heavyweights in the Web CMS world—Drupal and Joomla!.
Drupal (http://www.drupal.org) is a top open source Web CMS. Drupal has been around for years and has excellent architecture, code quality, and community support. The Drupal terminology can take time to sink in. But it can serve the most complicated content management needs.
FastCompany and AOL’s Corporate site work on Drupal:
Here is the About Drupal section on the Drupal web site. As you can see, Drupal can be used for almost all types of content management needs. The goal is to allow easy publishing and management of a wide variety of content.
Let’s try out Drupal. Let’s understand how steep the learning curve really is, and why so many people swear by Drupal.
Installing Drupal involves downloading the latest stable release, extracting and uploading files to your server, setting up a database, and then following the instructions in a web installer. Refer to http://drupal.org/getting-started/ if you need help.
In Drupal, viewing a page and editing a page are almost the same. You log in to Drupal and see site content in a preview mode. Depending on your rights, you will see links to edit content and manage other options.
We deserve congratulations. After installing Drupal, we spotted that it did not come with a WYSIWYG editor. That’s a bit of a setback. Drupal claims to be lightweight, but it should come with a nice editor, right?
There are reasons for not including an editor by default. Drupal can be used for a variety of needs, and different WYSIWYG editors provide different features. The reason for not including any editor is to allow you to use the one that you feel is the best. Drupal is about a strong core and flexibility.
At the same time, not getting a WYSIWYG editor by default was an opportunity. It was our opportunity to see how easy it was to add a plug-in to Drupal. We went to the Drupal site and found the TinyMCE module. The description of the module mentioned that the module is only a hook to TinyMCE. We need to download TinyMCE separately. We did that too.
Hooks are another strength of Drupal. They are an easy way to develop extensions for Drupal. An additional function of modules is to ensure that we download a version compatible with Drupal’s version. Mismatched Drupal and module versions create problems.
We created a new directory within sites/all. This is the directory in which all custom modules/extensions should be stored. We extracted the module and TinyMCE ZIP files. We then logged on to the Drupal administration panel.
Drupal had detected the module. We enabled it and configured it. The configuration process was multi step. Drupal has a very good access privilege system, but that made the configuration process longer. We not only had to enable the module, but also enable it for users. We also configured how it should show up, and in which sections. These are superb features for power users.
Once all this was done, we could see a WYSIWYG editor in the content creation page. We used it and created a new page in Drupal.
Here are the lessons we learned:
With those important lessons in our mind, let’s look around Drupal and figure out our way.
We just saw what it takes to get a WYSIWYG editor working with Drupal. This was obviously not a simple plug-and-play setup! Drupal has its way of doing things. If you are planning to use Drupal, it’s a good time to go deeper and figure your way out with Drupal. Try out the following:
Choosing a CMS is very confusing!
Evaluating and choosing a CMS can be very confusing. Don’t worry if you feel lost and confused among all the CMSs and their features. The guiding factors should always be your requirements, not the CMS’s features. Figure out who’s going to use the CMS—developers or end users. Find out all you need: Do you need to allow customizing the homepage? Know your technology platform. Check the code quality of the CMS—bad code can gag you. Does your site need so many features? Is the CMS only good looking, or is it beauty with brains? Consider all this in your evaluation.
Drupal’s code is very well-structured. It’s easy to understand and extend it via the hooks mechanism. The Drupal team takes extreme care in producing good code. Take a look at the sample code here. If you like looking around code, go ahead and peek into Drupal. Even if you don’t use Drupal as a CMS, you can learn more about programming best practices.
Now let’s do a quick review and see some interesting Joomla! features.
I remember deciding to pursue my first IT certification, the CompTIA A+. I had signed…
Key takeaways The transformer architecture has proved to be revolutionary in outperforming the classical RNN…
Once we learn how to deploy an Ubuntu server, how to manage users, and how…
Key-takeaways: Clean code isn’t just a nice thing to have or a luxury in software projects; it's a necessity. If we…
While developing a web application, or setting dynamic pages and meta tags we need to deal with…
Software architecture is one of the most discussed topics in the software industry today, and…