Release Notes

Release Notes

Every Core dna product, release by release, newest first. Each product ships on its own schedule.

Platform 2026.6

What’s new in Core dna Platform 2026.6

Faceted Search, Blog Posts by Author and Bug Fixes

Site search can offer facets, so visitors narrow results by brand, size or price and see how many results each option has. Blogs gain an archive of posts by author.

Key highlights

  • Faceted search: visitors narrow search results by brand, size, price or any value you index, with a count beside each option.
  • Posts by author: blogs gain an archive of each author's posts, co-written ones included.

Faceted search

Site search now supports facets, which let visitors narrow results by values such as brand, size or price, with the number of matching results beside each option.

Set it up

  1. Under Search › Facets, add a facet: its identifier and name, its type (keyword, text, integer, double, date or boolean), its sort order, an optional unit, and optional predefined values with display labels.
  2. Under Search › Indices, configure the facets index with a mapping template that decides what each product or variant contributes, and preview it against one product before saving.
  3. Reindex the facets index from the same page.

Facets are defined once for the account and shared by all its sites. Changing a facet's type needs the index rebuilt, not only reindexed.

Template code
{* Each facet, with the values that have results *}
{foreach $response->getFacets() as $facet}
    {foreach $facet->getAvailableValues() as $value}
        {$value->getLabel()|escape} ({$value->getCount()})
    {/foreach}
{/foreach}
{# Each facet, with the values that have results #}
{% for facet in response.getFacets() %}
    {% for value in facet.getAvailableValues() %}
        {{ value.getLabel()|e }} ({{ value.getCount() }})
    {% endfor %}
{% endfor %}

Posts by author

Blogs now have an archive of posts by author, beside the tag and category archives, at {blog}/authors/{author}. It lists the posts an author wrote or co-wrote, and has its own settings for posts per page, sort order and filter fields, under List blog posts by author in the Blogs settings.

Each author has a URL slug, made from the display name and editable on the author's form under Users › Authors, where the listing gains a Slug column.

Template code
{* The author archive: the author and their posts *}
<h1>{$author->getDisplayName()|escape}</h1>
{foreach $posts as $post}
    <a href="{$post->getFullPath()}">{$post->getName()|escape}</a>
{/foreach}
{# The author archive: the author and their posts #}
<h1>{{ author.getDisplayName()|e }}</h1>
{% for post in posts %}
    <a href="{{ post.getFullPath() }}">{{ post.getName()|e }}</a>
{% endfor %}

Other improvements and bug fixes

  • Fixed a rare issue where an automated email could be sent with the content of a different email.
  • Fixed an issue where blog listings failed with a server error when an author filter field was configured. Blog archive links now also use the blog's custom URL.
  • Resolved an issue where connecting some MCP clients, such as Claude Code, sent Core dna staff to the frontend login page instead of the admin login.
  • Fixed an issue where connecting a Google or Microsoft sign-in from the admin profile page redirected to a broken address with the domain repeated.
  • Fixed an issue where hook batches stuck as queued or running could not be re-run.
  • Fixed an issue where color fields converted saved rgb and rgba values to hex, losing their transparency.
Go deeper

Was this page helpful?

Your answer goes to the docs team.