Skip to content

enterspeedhq/enterspeed-source-sitecore-cms

Repository files navigation

Installation

To get started with the Enterspeed Sitecore integration you should follow these steps:

Install the NuGet package

Using the Package Manager

Install-Package Enterspeed.Source.SitecoreCms.V9 -Version <version>

The NuGet package installs config files into this directory; verify that this folder contains config files

~\App_Config\Include\Enterspeed

Configuring Enterspeed in Sitecore

Once installed, your Sitecore instance will be loaded with a new item in /sitecore/system called "Enterspeed Configuration".

You will have to enter the necessary values in the respective fields, and publish the changes.

How it works

This connector revolves a lot around the setting above, EnabledSites. The philosophy is that you can publish every item in your Sitecore solution and only items that belong to your enabled sites are being ingested to/deleted in Enterspeed.

Site

This connector requires a Site/Home item structure in /sitecore/content, which could look like this:

  • YourSite <-- add this item to the EnabledSites configuration field
    • Home

Content

Content items that are being sent to Enterspeed, will have references to the renderings inserted on them, along with information of the fields of the given datasources inserted on these renderings.

Each rendering reference sent to Enterspeed could have these properties:

  • name - the name of this rendering
  • placeholder - the Sitecore placeholder inserted on either the presentation details or the rendering itself
  • parameters - an array of key/values inserted on the rendering options
  • datasource - a reference to the inserted datasource item

Renderings

Renderings are processed separately, as well, but only if the rendering is inserted on the presentation details of a content item which resides in an enabled site. This means that newly created renderings are not processed until they're inserted to be rendered on content for which you have enabled.

Supported field types

  • Single-Line Text
  • Rich-Text
  • Checkbox
  • Date
  • File
  • Image
  • Integer
  • Multi-Line Text
  • Number
  • Checklist
  • Droplist
  • Grouped Droplink
  • Grouped Droplist
  • Multilist
  • Name Value List
  • Name Lookup Value List
  • Treelist
  • Droplink
  • Droptree
  • General Link

Field names in Enterspeed

Field names on your content are sanitized when sent to Enterspeed. See below example:

  • Content
    • Title
    • Text
    • CTA Link
  • Footer
    • Contact Link
    • Text

The above sections and fields will be sanitized like this - see below:

  • content_title
  • content_text
  • content_ctalink
  • footer_contactlink
  • footer_text

In this way, we can support the out-of-the-box option Sitecore provides for having multiple fields with the same name.

Debugging

You can debug what is sent to Enterspeed when publishing Sitecore content, by requesting this path:

  • /api/sitecore/enterspeed/debug?id=[idOrFullPath]

Roadmap

  • Improved logging.
  • Functionality to trigger a push to Enterspeed from a contextual ribbon/action in Sitecore.
  • Forms support.
  • TBD.

Contributing

Pull requests are very welcome.
Please fork this repository and make a PR when you are ready.

Otherwise you are welcome to open an Issue in our issue tracker.

License

Enterspeed Sitecore Source is MIT licensed