Check out this month's addition to Xperience by Kentico. We added several exciting enhancements like content versioning, customer journeys, a production ready Email Builder and AIRA support for asset metadata! But, of course that's not all, so dive in and learn about the updates we've just delivered in Xperience by Kentico.
Improving content governance
Control, constraints, consistency... you might think these concepts are at odds with the creative and fast moving world of digital marketing. Maybe, but given the right constraints, marketers can actually do more and confidently experiment.
Content governance is an important practice for marketing teams if they want to stay focused on high value work. If marketers feel confident about content authoring and maintenance, they can move more quickly.
Even if a marketing team has a content governance plan, eventually something will be published that needs to be unpublished. But, what about the previous content, media, or customer experience? How do you return to the last known good content?
Content versioning
Xperience by Kentico now supports content versioning for reusable content in the Content hub, headless items in headless channels, and web pages in website channels. The version history feature includes the ability to review and restore earlier versions.
In this video we see a typo has been identified on the Dancing Goat home page. We want to identify when this typo was introduced because it might be a signal of other content governance issues at that time.
Once the version history dialog is opened for a page we can review the past versions, pinpoint the version that introduced the typo, and also revert to the version immediately before.
Once we've restored the earlier version we can review the content in the Page Builder and ensure everything looks correct before publishing.
As part of our next Refresh in April, we're planning to enhance content versioning with the ability to preview the Page Builder and improved editing experience with content read-only mode.
Content versioning is configured globally for each Xperience by Kentico application. It can be enabled or disabled and you can specify the number of versions to maintain for all content items.
For example, you can disable content versioning in non-production environments where it's not needed or in local developer environments where Xperience's CI feature already handles version management with Git source control.
We recommend limiting the total number of stored versions to a number that makes sense for your team and your content and use your version history in tandem with features like workspaces, publishing workflows, and content usage tracking to support your content governance approach.
It's also worth noting that content versioning records changes to content publishing state, like scheduled publishing, without using the "stored versions" count quota.
Effective customer experiences
As a marketing team grows the number of channels they manage to reach new customers and provide a broader customer experience, the more difficult it can become to identify when and why customers fail to reach a goal during their journey.
Did your customers fail to download that new white paper because no one submitted the form (oops! you forgot to publish that page) or because the email containing the download link isn't being opened (oof! you forgot to create an automation for that form submission)?
Maybe you are just curious - are customers visiting the landing page we recently created before signing up for our newsletter?
Marketers need to see trends of customer engagement across channels so they can improve the customer experience to achieve a desired outcome.
Increasing coffee sample requests
Image you are a digital marketer for Dancing Goat. You know customers purchase more coffee and visit your cafes when they try your coffee, so you've created a coffee sample program that customers can sign up for to drive sales.
You've used Xperience by Kentico to create a flow through your channels for customers that you hope will lead to coffee sample requests.
First, you have a newsletter sign up form in the footer across your website. If visitors are interested in news and education about coffee they are prime candidates to request some samples and become loyal customers.
Your newsletter emails are full of interesting information about coffee and Dancing Goat's products - there's real value here for coffee enthusiasts. At the top of each email you include a short message about your sample program and a link to a new landing page you've prepared for the program.
When visitors visit the coffee samples landing page they are guided to a form to share their information to request coffee samples.
The Dancing Goat marketing wants to answer the following questions
- What are the key steps required for a visitor to request a sample (reach the goal)?
- Are all visitors that start down these steps converting?
- Can we identify which steps in the process have the biggest drop off so we can improve that part of the customer experience?
Customer journeys
To help marketers solve the challenge of visibility and validation of key customer goals and their progress towards them, we've introduced customer journeys - a new feature in Xperience by Kentico.
So, what is a customer journey? Let's see what our Xperience by Kentico guide What is a customer journey? has to say.
In short, a customer journey is a roadmap of how a person interacts with a brand across different touchpoints. Tracking this journey gives you the right insights to create seamless experiences and ensures that every interaction is meaningful.
Let's use customer journeys to answer our questions about the Dancing Goat coffee sample program.
Customer journeys can be found through a new application icon on the Xperience by Kentico administration dashboard.
Customer journeys have a Journey Builder where marketers can define stages of the journey. For our example we have the key touchpoints as each step - these are the minimum required steps to reach the goal. We aren't concerned with all the clicks, searches, and page visits in between.
Our key steps are the following.
- Newsletter sign up
- Clicking the samples landing page link in a promotional email
- Filling out the sample request form
Journey steps can be defined as a simple action like submitting a form or they can be a complex combination of visitor activities, like clicking a link in the most recent marketing emails we've sent to subscribers.
These conditions are built using the same condition rule builder you're familiar with from contact groups and automations.
Once we've identified the customer goal and defined the journey steps we can analyze the results from the customer data stored in Xperience by Kentico.
In this example we can see there's a gradual drop in the number of visitors reaching each step, which is expected. Once visitors get to the sample request page they tend to fill out the form. However the drop between newsletter sign ups and clicking the samples landing page link in the email is bigger.
The way customer journeys visualizes these trends can help marketers identify where to invest their time to improve the outcome of their marketing strategy.
It probably makes sense for the Dancing Goat marketing team to try replacing the email link with a big call to action and see if that helps with conversions at this step in the journey 😀.
To get the most out of customer journeys and understand how it builds on Xperience by Kentico's automations, Form Builder, customer data management, and multichannel design, we recommend you read through our brand new guide on customer journeys.
Production ready, no-code, visual Email Builder
We released a preview version of our Email Builder last month so developers could start exploring the new technology foundations we've adopted - ASP.NET Core Razor components and MJML.
This month the Email Builder is production ready!
The Email Builder is designed to be flexible and support marketers visually designing emails with ad-hoc content, reusable content from the Content hub, and pages from website channels all without writing any code.
The Email Builder also follows Xperience by Kentico's hands-off approach to customer experience - we provide the foundation developers need to build tailored tools for marketers to author and manage on-brand customer experiences with consistent messaging.
We also know that some of our customers prioritize quick wins with email channels over truly bespoke designs, so we're working on an open-source Email Builder starter kit of components that should help developer teams get new email templates, widgets, and sections to production faster.
Additionally, now that the Email Builder is released we're working on updating both the Dancing Goat and Kbank demo environments to use the Email Builder.
Finally, we have follow up improvements planned for the Email Builder in April including personalization, UX updates, and allowing the Email Builder to be used for more email purposes.
Asset auto-tagging and metadata with AIRA
Marketers are easily frustrated by tools that slow them down and fall in love with tools that help them accomplish more with less effort.
Building on our recent set of enhancements to image assets in the Content hub and additions to AIRA that accelerate marketers, we've combined both yet again with AIRA based asset auto-tagging and metadata generation.
This is a great example of AIRA working behind the scenes to make marketer's jobs easier.
AIRA's growing list of features can be globally toggled in the AIRA application from Xperience by Kentico's administration dashboard, including asset auto-tagging and description generation.
Once enabled for the application, these new AIRA features for content item assets are opt-in for the fields of each content type.
Once everything is configured, marketers can drag-and-drop their way to content authoring victory 🤩 thanks to AIRA and Xperience's asset processing pipeline!
Taxonomy fields will be populated with AIRA's image analysis and the designed description field will be filled with a brief explanation of the image's content which is important for web accessibility.
Marketers can always adjust what AIRA pre-populates because they have full control over their content.
It's worth noting that taxonomy tag descriptions are sent to AIRA to assist in selecting the right tags to apply to an asset. This means it's worth your time populating this field when authoring your taxonomies.
Website channel page tree search
Xperience by Kentico's Content hub includes a simple text search along with an advanced set of filters, content folders, and smart folders to help marketers quickly find content items for modification or reuse.
Now, website channels make it easier for marketers to find specific web pages with the new website channel page tree search feature.
This search feature can be found above the website channel page tree. It respects website page permissions for the current administration user and filters pages in the tree based on their page name which is the internal name displayed in the tree.
Searching for a word or phrase will filter the results, maintain the tree structure, and highlight the matching characters in bold.
If a website channel page tree has thousands of pages and there are more matches than can reasonably be displayed, the search will display a limited number of results and ask the user to refine their search.
This search UX is also available anywhere the website channel page tree is visible, including when selecting pages for page type fields or builder components using the combined content selector.
By including the search experience directly in the page tree, we let marketers find what they need in a consistent way across all of Xperience by Kentico's administration features.
Faster application development
Marketing teams have budgets just like any other department in an organization. Building amazing digital experiences for customers has a cost but that cost is worth it when it leads to even more revenue.
Developers need to be able to get DXP solutions to market quickly to help the budget cost vs impact formula make sense for the marketers they support.
Over the next several refreshes, Xperience by Kentico will be improving the C# API surface for content retrieval - a key part of a developer's responsibility when building website and email channel experiences.
Cache dependency builder
The first iteration in easier content retrieval comes in the form of a new cache dependency builder. The reduces the need for developers to look up cache dependency key patterns in our documentation due to its simple and intuitive fluent API.
It can be used for content items and has a very flexible set of method overloads which means developers can pass their content data to the builder and get the correct dependency keys without much ceremony.
// Assume a collection of web pages on which to create the dependency
IEnumerable<CoffeeDetailPage> webPages = GetDependencies();
CMSCacheDependency dependency = cacheDependencyBuilder
.ForWebPageItems()
// Creates a dependency using ID/GUID/CodeName
// of all items from the 'webPages' collection
.ByGuid(webPages)
.ById(webPages)
.ByCodeName(webPages)
.Builder()
.Build();
It can also be used for built-in or custom objects, like MemberInfo
.
// Sample data containing the currently authenticated member account
MemberInfo currentMember = GetCurrentMember()
CMSCacheDependency cacheDependency = cacheDependencyBuilder
.ForInfoObjects<MemberInfo>()
.ById(currentMember.MemberID)
.Builder()
.Build();
We hope developers can begin using this API to simplify their cache management code, but we also advise you wait on refactoring all of your content retrieval logic because over the next two refreshes will introduce a new content retriever.
The content retriever will use our new cache dependency builder internally to automatically generate the correct cache dependency keys.
We've seen examples where adoption of this upcoming API led to a 4x reduction in lines of code. We're excited to get it into your hands and this cache dependency builder is just the first step.
Other API improvements
We've also improved or added several other APIs for developers to help them build faster.
The ContentItemCommonDataFirstPublishedWhen
and ContentItemCommonDataLastPublishedWhen
values were added to generated models under SystemFields
and also to the IContentQueryDataContainer
interface.
These are useful when you need to order content queries by authoring date and don't have a dedicated content field marketers use for presentation purposes.
The system now provides new API for managing redirects with the IWebPageRedirectManager
interface. This API can be useful migrating from other CMS and DXP products, or when upgrading from earlier versions of Kentico.
We also made several performance improvements to processes that are part of Xperience by Kentico SaaS deployments and backups.
What's next?
As always, check out our documentation Changelog for the full Refresh feature and technical details.
We hope these new capabilities, features, and API improvements unlock solutions for you. Try them out, let us know 👋 what you think.
For the next Refresh... well, it's packed with exciting features!
- Digital commerce - preview is our first release of native commerce in Xperience by Kentico, including a refresh of Dancing Goat to demo its capabilities.
- Content retriever - preview gives developers an early look at the simplified approach to content retrieval.
- Image resizing and asset URLs compliments the image variant support we recently added.
- Email Builder personalization brings UX updates to the Email Builder and enables widget personalization like the Page Builder.
- And so many more...
These updates will, as always, accompany a number of UX and developer-focused improvements.
Check back next month for another Xperience by Kentico Refresh review!
For the technical audience, this Refresh is represented by v30.3.0 of Xperience by Kentico.