Content Management Systems (CMS) have become a critical tool
for new web projects. A CMS provides lots of out-of-box features (blogs,
ecommerce, search, events, forums, etc.) in a package that is easily managed by
non-technical content authors. This allows web projects to quickly hit the
ground running and prevents developers from reinventing the wheel
for numerous common features.
However, each project will always have a handful of unique
requirements not addressed by the CMS. Developers become responsible for
extending the CMS to confront those missing capabilities. For many web
projects, this is where everything goes downhill. Weeks later, you’re up to
your eyeballs in someone else’s code and struggling to extend a system you
didn’t design.
This Is A Big Problem
At Telerik, this challenge is a big concern for us. We have
numerous partners who use Sitefinity
CMS as the basis for their web projects. These projects required custom
development on a fixed timeline. As a result, developers involved in these projects
needed to become rapidly productive.
Sitefinity’s architecture was built to be very powerful
and extensible. This means Sitefinity is provider based, contains LINQ
support, a Fluent API, RESTful web services and numerous interfaces for
implementing permissions, publishing, classifications, workflow and more.
However, this power created complexity for developers who were
simply trying to add a small custom module (for example, a "Showcase
gallery") to their web site. Learning how to implement the various
interfaces required a lot of research. In the context of a small project, this
consumed precious time.
To confront this challenge we needed to create an accessible
tool that would enable customers to easily wield Sitefinity’s underlying
power. In other words, we wanted to have our cake and eat it too.
The Cake Is Not A Lie
To overcome this challenge we talked with numerous customers
to better understand the extensions being added to Sitefinity. From these
conversations, the theme that quickly emerged was new content-types.
All industries have data that is unique to their domain; theaters have movies,
property managers have rentals, banks have loans, hotels have rooms, etc.
These new content-types were the most common extensions developers are creating
for their CMS.
We delivered our solution in Sitefinity 4.4; using a
web-based "Module
Builder" a developer can now rapidly create new content-types. This Module
Builder will automatically generate the interfaces, API’s and widgets that
previously needed to be created from scratch. However, these auto-generated
modules are still extensible using .NET and Visual Studio.
This feature enables developers to rapidly prototype their
Sitefinity extensions, while still having the freedom to fine-tune the
functionality of their new module.
How It Works
- Create your new content type.
- Define the associated fields.
- Install your new module.
- Customize your administrative interfaces.
- Add a new content item.
- Display the content items on the web site.
- Use the API to create extensions.
Give It a Try
No CMS will ever be a perfect fit for all your web project’s
requirements. Consequently, it’s important to find a CMS that gets you most of
the way there, but then equips you with tools that empower you to confront the
remaining challenges. With Sitefinity’s new Module
Builder we’re helping customers rapidly confront their project’s unique
challenges.
Give
it a try with our downloadable trial or using our online sandboxes.