A Content Management System (CMS) provides many essential tools for maintaining a website, but even though it offers a great deal of functionality and customization options, site owners still often find themselves pushing against the limits of what they can do. But just because a CMS doesn’t natively offer a certain functionality, that doesn’t mean it is impossible to implement it within the context of the website.
In reality, enterprise CMS platforms like Ektron and EPiServer are composed of relational databases. This means that you can create your own database and tie it seamlessly into the CMS product, allowing you to develop your own functionality beyond what the CMS offers.
Let’s look at some examples of custom functionality that can be integrated into a CMS:
One common request for CMS-driven websites, and especially for corporate intranets, is the creation of a sophisticated “favoriting” system for web pages and documents available within a website. When users are logged in to the site, they want to be able to save a list of their most-visited pages or most-viewed documents, making it easy for them to return to information that they use often.
This functionality is not usually native to a CMS platform, but it can be implemented by creating a custom database table for these favorites and tying it to the user ID. This data can then be displayed within the user interface whenever a user has logged in.
E-Commerce Product Information
In a CMS-driven e-commerce site, site owners are often misled to believe that all product information needs to reside within the CMS or commerce database. This is far from ideal, since it would mean that product data (including product name, price, and any other information about the product) would need to be constantly updated to remain accurate.
However, the only information that is completely necessary within the CMS is what is required to make a purchase (that is, the product name and price). Any other data that needs to be displayed can be handled through SQL replication or web service calls. Managing the product data in an external system allows a company to automate any changes in product information rather than having to manually update it within the CMS.
These are just a few common examples of custom functionality that can be integrated within a CMS website. Just because the CMS does not offer the ability to perform a certain task or function does not mean that it can’t be implemented in a straightforward manner. In fact, the customization options for CMS-driven websites are nearly endless (although you’ll want to be sure that you are still following best practices). Do you have any questions about how to implement the functionalities mentioned above? Do you have any customization options that you want to explore for your CMS website? Please contact us to speak with a Solutions Engineer, or share any thoughts, ideas, or questions in the comments below.