Install-Package Constellation.Foundation.Datasources -Version 10.2.0.29844
dotnet add package Constellation.Foundation.Datasources --version 10.2.0.29844
<PackageReference Include="Constellation.Foundation.Datasources" Version="10.2.0.29844" />
paket add Constellation.Foundation.Datasources --version 10.2.0.29844
#r "nuget: Constellation.Foundation.Datasources, 10.2.0.29844"
// Install Constellation.Foundation.Datasources as a Cake Addin #addin nuget:?package=Constellation.Foundation.Datasources&version=10.2.0.29844 // Install Constellation.Foundation.Datasources as a Cake Tool #tool nuget:?package=Constellation.Foundation.Datasources&version=10.2.0.29844
Requires Sitecore 10.2
Requires .NET 4.8
Constellation is a collection of utilities for .NET CMS implementers.
The Foundation.Datasources library is an opinionated information architecture for Sitecore. It includes "base" templates and Item
information rules to enforce the architecture.
Core Architecture Concept:
Web Site Items are one of the following types:
Context Datasource: A "page" Item in Sitecore, has a URL, has presentation, loads a Layout and has placeholders for additional Renderings.
Subcontent: A "page fragment" Item in Sitecore, specifically an Item designed to be used as the DataSource for a Rendering. It is required
for the Rendering to render. Subcontent is optional page content, but is unique to the page it appears on.
Widget: Also a "page fragment" Item in Sitecore, specifically an Item designed to be used as the DataSource for a Rendering. It is required for the Rendering to render. Widgets are optional page content, but are designed to be shared by multiple pages.
The primary information architecture for this design involves the storage of SubContent vs Widgets. All Pages on a site should get a _subcontent folder beneath them which is where Items of type Subcontent should be stored. This allows for Renderings to specify their Datasource location as "./_subcontent"
Widgets should be stored beneath the /tenant/site node (using Helix methodology) typically in a /widgets folder, possibly broken up by widget type or marketing intentions.
You can use the following Rule Conditions to enforce this Information Architecture:
* Item IsSubcontentDatasource
* ItemSupportsSubcontent (in some cases Pages should not support subcontent, for example, wildcard pages or pages imported from an external system)
You can use the following Rule Actions to enforce this Information Architecture:
In general you need a rule like this:
On Item Saved, if the Item Supports Subcontent, Create a Subcontent Folder (if none exists) An example is provided in the attached package.
After setting up this rule, ensure that your Renderings are organized into Widgets and Subcontent with appropriate Datasources established.
Add this NuGet package to a Web Application project. After building and deploying, this library will automatically install the Sitecore package containing the necessary rules and templates to support this architecture.
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
Updated Sitecore reference minimum to 10.2