It seems like only yesterday Kentico Xperience 13 was launched. Amongst other enhancements, the marketing automation overhaul presented a very positive step, as we saw Kentico Xperience continue to mature as a seriously powerful digital experience platform (DXP). The recently launched Kentico Xperience 13 Refresh 1 brings about some valuable features and improvements, including two integrations: Bynder—for digital asset management, as an alternative to the Kentico Xperience Media Library; and Recombee—the powerful AI recommendation engine, as an alternative to the Kentico Xperience segmentation-based content personalization. We have tested them for you; let’s explore how it went.
Work with media in structured content seamlessly with Bynder
The media library in Kentico Xperience has remained a stable part of the system, robust and feature-rich enough for most website content strategies. However, for solutions that require more sophisticated media management with powerful categorization and collaboration functionality, looking at a best-of-breed solution would be preferable.
Organizations are placing more and more emphasis on their content, which is becoming an increasingly valuable commodity. Decoupled best-of-breed data asset management systems (DAMs) make sense in the world of omnichannel. There, interconnected systems need to pull content from a centralized system. Still, the people managing the system require a tool that is a purpose-built product for that one specific purpose—independent of whatever channel is consuming its data. Bynder provides an enterprise-grade solution for managing and categorizing your media.
So, what is the Refresh 1 Bynder integration? Glad you asked. In a nutshell, it provides an alternative media selector that lets you source media files from the Bynder DAM as opposed to the standard Kentico Xperience media library. The integration itself involves installing a NuGet package and making some configurations. However, it’s amazingly simple as it only takes about 15 minutes altogether to get everything set up and running.
Step 1: Updating the Kentico Xperience Admin application
The first step is to set up a Bynder trial account, which comes with a demo organization, including a multitude of media assets.
Next is an update to the Kentico Xperience DMS web application—which requires the Bynder NuGet package. A quick update in Visual Studio via the NuGet package manager console:
Install-Package Kentico.Xperience.Bynder.KX13 -Version 0.1.0
After that, simply (1) add a new media selector field to a page type that would be using a Bynder media selector; and (2) update your .NET Core website to render the Bynder images.
I decided to trial the Bynder integration on an Article page type. I replaced a teaser image field, which was originally a direct uploader form control. This meant that on my website, wherever there were news article teaser components, the imagery would be pulled in from Bynder.
The original Direct uploader image selector form control:
With the new Bynder image selector form control:
Once that was done, after browsing to the content tree and selecting to edit the Article page, I could see the updated Teaser field, which was now using the Bynder image selector:
Selecting to update the teaser image then brought up the Bynder library—which surprised me at how many filtering options I had at my disposal, including all the taxonomy and categorization, collections, campaigns, and channels. A tightly maintained Bynder marketing campaign can be easily aligned with the website channel, and you can see how advantageous this could be for certain content strategies, especially considering the efficiency this brings to the table.
Then it was a matter of selecting the new teaser images for the articles. All very seamless:
Step 2: Updating the .NET Core website
The next step is to update the .NET Core website to utilize the updated article teaser field.
First, the page type generated class file had to be updated as the ArticleTeaser field was changed to a text type (string). That was copied over the top of the existing Article.generated.cs file in the Models folder of the.NET Core application.
Next the view model update:
public string TeaserPath { get; set; }...TeaserPath = !string.IsNullOrEmpty(article.Fields.Teaser) ? JObject.Parse(article.Fields.Teaser)[“assetUrl”].ToString() : null;
Finally, the view:
<img src=”@article.TeaserUrl” alt=”@article.Title” title=”@article.Title” class=”article-tile-image” />
Now, the moment of truth! The result:
A very simple integration that not only adds the functionality necessary to manage large enterprise content strategies but also does so in a seamless way. Almost too easy!
Skyrocket the efficiency of AI-driven content recommendations with Recombee
Content personalization has been a considerable part of the allure of Kentico Xperience DXP for the power to provide content marketers with the ability to personalize content by leveraging Kentico Xperience’s segmentation capabilities, primarily the domain of personas. Understanding your target audience and aligning personas to capture the unique audience traits can be simple, or it can be complex and involve levels of psychology, especially when planning relevant content with the highest potential ROI.
AI recommendation engines have been taking the burden away from humans by utilizing sophisticated algorithms—to both understand the target audience and to serve the most relevant content. This helps marketing teams save time and money, allowing them to focus their efforts elsewhere.
Recombee is an enterprise-grade recommendation engine that utilizes AI to keep track of your website audience and to serve relevant, personalized content and product recommendations. It’s a key feature that will not only help establish Kentico Xperience as a heavy-hitting DXP contender but, more importantly, will empower marketing teams to let Kentico Xperience work for them in bigger and better ways.
So, what did I do to get elbow deep in this new feature? First, I had to set up a free trial account with Recombee. Next, I installed a clean Dancing Goat .NET Core instance and then went straight into the setup instructions.
Step 1: Updating the Kentico Xperience Admin application
The first thing to do was to install the NuGet package, which added the Recombee module that provides the database management tool. Another quick update in Visual Studio via the NuGet package manager console:
Install-Package Kentico.Xperience.Recombee.Admin.KX13 -Version 0.0.1-preview
The next step was a little bit fiddly, and it involved setting up a custom module to map the Dancing Goat Article page type fields with a Recombee item. Pretty straightforward but somewhat a manual process. A sample of the required code update is described here.
Next, was an update to the web.config file which required me to add the Recombee database name definition and the private token from my Recombee account:
<add key=”DancingGoatCore.Recombee.ContentRecommendation.DatabaseId” value=”dancing-goat-dev” /><add key=”DancingGoatCore.Recombee.ContentRecommendation.PrivateToken” value=”abc-xyz” />
Then a quick rebuild in Visual Studio.
Important step—ensure that automated marketing is enabled:
Final step—initialized the Recombee database:
Step 2: Updating the .NET Core Dancing Goat website
Initially, I used the pre-prepared Recombee-ready Dancing Goat .NET Core site with the required page elements for showing recommendations. My Kentico Xperience Admin application was all set and configured, so it was just a matter of hooking up the Dancing Goat website to the mother-ship!
However, after I’d got it all working, I was curious to see how much effort was involved in doing this manually—and it turned out to be pretty effortless.
Taking a look under the hood (or bonnet—depending on where you’re from), the magic happens by way of querying the Recombee API for a collection of recommended content based on the current contact:
// Using the package namespace
using Kentico.Xperience.Recombee;// Using the IContentService class
IContentService contentService;// Gets pages recommended for the specified contact
contentService.GetPagesRecommendationForContact(string siteName, Guid contactGuid, int count, string culture, IEnumerable<string> pageTypes = null);// Gets pages recommended for the specified page and contact
contentService.GetPagesRecommendationForPage(TreeNode page, Guid contactGuid, int count, string culture, IEnumerable<string> pageTypes = null);
One last thing, an update to appsettings.json with the Recombee database and key details:
“DancingGoatCore.Recombee.ContentRecommendation.DatabaseId”: “dancing-goat-dev”,“DancingGoatCore.Recombee.ContentRecommendation.PrivateToken”:”abc-xyz”
Finally, a quick rebuild in Visual Studio and then the moment of truth…
I browsed my Dancing Goat site and suddenly started seeing article recommendations!
I then checked what was happening in Recombee, and there were the stats:
What is this sorcery? Like magic, as I browsed the site mimicking several users (on different browsers), I was generating a contact list in Recombee, and each contact was getting recommendations served to them.
Future-proof enhancements to power your digital communication
For out-of-the-box features such as a media library and segmentation-based content personalization, Kentico Xperience provides excellent features that have long been powerful enough for most website builds. However, as we look toward more complex and sophisticated solutions, particularly those in the larger enterprise space, we need to start thinking about stand-alone best-of-breed services to handle such things as management of assets and being able to utilize the power of machine learning to take care of content personalization for us.
These two great integrations are a step in the right direction that allows the already powerful Kentico Xperience DXP to comfortably play within the enterprise space and help businesses excel at digital communication!