.NET Daily

Case Study

Technical Guide to Choose a Content Management System

Posted on .

Technical Guide to Choose a Content Management System


Most of the companies that consider at some point choosing a CMS they also expect their solution to be in top shape for at least 5 years. Giving the fact that a CMS represents in many cases the main communication channel with the potential and existing customers, a significant amount of resources need to be invested in it, both material and intellectual, so that the new solution fits perfectly on the company’s business model.

While the CMS market is floated with both open source and proprietary solutions to choose from, mapping customer’s business requirements on the features of a CMS product is not an easy task. A perfect balance needs to be found between product built-in features, product cost and additional customizations that need to be performed in order to design the perfect solution for your client.

I consider that the following functional requirements need to be closely evaluated when choosing a CMS product for your potential client:

1. Product Extensibility

As mentioned earlier, the new CMS product must be a perfect fit for your client’s business. This means that the new CMS product might need to be integrated with some additional in-house systems, CRMs, social media networks or simply might need backend customization on some key features to map the organizational structure of the company.

Choosing a CMS product which doesn’t have an extensible business layer nor providing an API to ease the communication with the database may increase the final price of the implementation by introducing development challenges.

Having access to a plugin repository or to a module marketplace which provides you access to common customizations for the product can even further speed up the development.

Key features to be considered:

  • Extensible business layer.
  • API.
  • Plugin repository or module marketplace.

2. Customizable Content Editor

Some of the clients that post content on a daily basis on their CMS might have HTML specialized personnel, but this is not a common situation.

For an HTML specialized personnel, having a complex WYSIWYG editor with HTML code highlighter is a very good addition while for the latter you might need to consider having a very light content editor that is easy to learn and doesn’t allow too many style customizations.

An integration with a file manager at the content editor level that allows users to insert images or even embedded videos into the article is also some of the common requirements from clients, so do take into consideration this feature.

Key features to be considered:

  • HTML code highlighting.
  • Content editor with a customizable toolbar.
  • Video files embedding capability.

3. File Manager

If your client also posts documents on a daily basis, then probably they will also want a file manager that organizes files in a physical folder structure and offers search, sort and filter functionality.

Having the possibility to integrate the file manager with a third party file sharing vendor like Dropbox, Google Drive or Microsoft SharePoint might be a nice addition.

Key features to be considered:

  • Physical folder structure arrangement.
  • Search, sort and filter functionality.
  • Third party file sharing vendor integration.
  • Image galley.

4. Inline Content Editor

One of the easiest ways for the client to change the contact information from the website’s footer or to change the website’s logo without asking for help from a developer is through the inline content editor. This is one of the most requested features from clients because it’s very intuitive and very easy to use.

However, too much freedom in the hands of an unexperienced user may result in design inconsistencies.

Key features to be considered:

  • Inline content editor.
  • W3C compliant inline generated code.

5. Custom Publishing Workflows

In a CMS context, the content is seen as the most important asset of the company, so making sure every part of it is properly reviewed it’s an important task. Enforcing a specific workflow to match client’s internal organization ultimately leads to consistent high-quality content, so the new CMS should allow the management of user roles and of custom publishing workflows.

Key features to be considered:

  • Support for user roles.
  • Publishing workflows management.

6. Multilanguage Support

While many CMS products brag about adding this functionality to their features list, not all of them offer full support for it.

For example, language fallback functionality is something that’s rarely present on small and open source products.
If your client plans a global availability of their content, then make sure you take into consideration adding content for new languages and multiple locales on the fly.

Key features to be considered:

  • Multilingual support.
  • Language fallback and multiple locales support.
  • Translation for static assets (images, documents).

7. Custom Analytics

Most of the clients don’t need more than the basic visitors information provided by Google Analytics, but some of them that rely their entire business on content creation want to see how end users interact with the content, what navigation habits they have, what are the articles that generate the biggest revenue, etc. For these kinds of reports the chosen CMS product needs to have an internal marketing system.

Key features to be considered:

  • Engagement analytics.
  • A/B testing.
  • User experience analytics.

7. Other Important key Features

The above mentioned features are not the only ones that should be taken into consideration when choosing a CMS product. Based on your client’s business requirements, alternative features like the following might be a good addition:

  • Content versioning support. Mandatory feature for any CMS on the market.
  • Multiple domains support. If your client wants to go globally then maybe they also want custom domains for every country in which they are present. Example: clientdomain.fr, clientdomain.de etc.
  • Powerful search engine. Some CMS products offer basic search functionality only for articles, other products offer advance search capabilities with auto-complete features or advanced search engines like Lucene.
  • Social Networks Integration. Nowadays, end-users share everything everywhere. Providing content sharing support for the major social networks is, once again, a mandatory feature for any CMS on the market.


As you can see, there are lots of features that need to be considered when discussing a possible CMS implementation for a client. However, discussing them is not the hardest part but choosing the right CMS product from dozens solutions available out there.

From a developer’s perspective, you also need to pay attention to the development community formed around a certain CMS product because it can help your team find solutions to common problems and ultimately reducing the development time of the project.

Though, at the end of the day you might be lucky and meet all the business requirements to a specific CMS product, but if the project is too expensive for your client, then you can easily say: goodbye project! The budget still remains your biggest enemy and product price still remains the most important key feature.



Darius Dumitrescu is a creative Senior CMS Consultant with in depth .NET knowledge, focused on Web Development and Architecture Design.

There are no comments.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

View Comments (0) ...