Sitefinity CMS Add-ons

Definition

Add-ons are packages of code and content that extend the core functionality of the Sitefinity CMS. Add-ons are made of custom ASP.NET code, configurations, content, and assets. Add-ons can include, but are not limited to Pages, Page Templates, Widgets, Widget templates, Libraries, Dynamic modules, Static modules, images, CSS, and JavaScript.

Purpose

Add-ons should distribute a single piece of functionality to many consumers to solve a common set of problems across a wide range of web applications. Each add-on should have an owner who can maintain it and issue new versions.

RECOMMENDATION: We recommend using add-ons only in cases when you need to solve a common problem across many web applications. We do not recommend creating an add-on for every piece of customization of your system. Implementing an add-on for every piece of functionality in a system is not feasible and not recommended, as it can add significant complexity in the upgrade process and increases the overall development cost.

Architecture

Add-ons are contained and distributed in NuGet packages. The .nuspec file and folder structure for each package is automatically generated by the Sitefinity CMS. The folder structure contains files with all structure and content data of the exported types. All custom developed functionalities, such as Providers, Widgets, HttpHandlers, Services, etc. are contained in separate projects that are referenced in the .nuspec file. The produced NuGet package contains all necessary custom code and data that works out-of-the-box when installed.

EXAMPLE: Following are few examples of add-ons:

  • Extended Blogsmodule - provides better SEO support, automatic semantic relation of blog posts items, a custom Authorsmodule, etc.
  • Connector for Eloqua - integrates the Sitefinity CMS with the Eloqua marketing platform by extending the Forms module and inserting JavaScript code with tracking purposes that executes on every public page
  • DevMagazine website – provides a starter kit template website.
    For more information, see Example: DevMagazine website.

This section contains

Modules supported for export
Learn what system elements and modules you can use to create an add-ons. Understand the dependencies between exported items.
Limitations of add-ons
Learn which content items and templates are imported and exported in the default provider in single and multisite mode and what are the dependencies.
Create add-ons
Develop and test an add-on in a continuous delivery process.
Install and activate add-ons
Install an add-on on your production environment in a continuous delivery process.
Delete add-ons
To delete an add-on, you uninstall the NuGet package, containing the add-on. You use the Package Management Console of Visual Studio.
Add-on upgrades and versions
Learn about consideration regarding upgrades of your add-on, as well as Sitefinity CMS upgrades.
Sample add-ons
DevMagazine website showcases Feather framework to build an entire website from scratch, mobile responsive design, use of built-in widgets, and frontend packages.
Create a Conference add-on
The Conference add-on contains Conferences, Speakers, and Sessions dynamic modules, Filtered Sessions Feather widget, and sample pages and content.
Best practices for Add-on development
A list of best practices for setup and development of add-ons in Sitefinity CMS.
Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.
This Article Contains
New to Sitefinity?