Release Notes

Release Notes

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

Platform 2026.4.3

What’s new in Core dna Platform 2026.4.3

Content Search, Registration reCAPTCHA and Bug Fixes

Content tabs gain an in-page search, and user registration can use invisible reCAPTCHA. Large downloads and billable request exports are more reliable.

Key highlights

  • Search inside the editor: find a component, field or piece of text on a long Content tab.
  • Invisible reCAPTCHA for registration, and an API endpoint to register users.
  • Twig in email templates on Twig sites.

Changes in behaviour

  • Billable requests export: the export link now starts a background export and emails a download link, instead of returning the file.

Search inside the editor

Long Content tabs, on pages, blogs and posts, FAQ questions and product descriptions, now have a search box. Type a word to find a component, field or piece of text: matches are highlighted, the matching components open, and the first match scrolls into view.

Invisible reCAPTCHA for registration

User registration can now use invisible reCAPTCHA, which checks visitors in the background without an extra click. Choose it in the reCAPTCHA field of the Registration group under Users › Configuration: Disabled, v2 Checkbox or v2 Invisible. The same protection applies to the new API endpoint for registering users. A registration template prints the widget, then its script:

Template code
{* Inside the registration form: the widget first, then its script *}
{if isset($_recaptcha)}
    {$_recaptcha->getWidgetHtml()}
    {$_recaptcha->getScriptTag()}
{/if}
{# Inside the registration form: the widget first, then its script #}
{% if _recaptcha is defined %}
    {{ _recaptcha.getWidgetHtml()|raw }}
    {{ _recaptcha.getScriptTag()|raw }}
{% endif %}

Twig in email templates

On sites that use Twig, email templates can use Twig syntax, such as {{ variable }}, as well as the classic %placeholder% tokens, so dynamic content renders correctly. Existing templates keep working unchanged.

Large files stream

Large downloads and media are now streamed in small pieces, so a video can be played and skipped through without loading the whole file, and partial requests report the right size to browsers and caching proxies.

Other improvements and bug fixes

  • Email templates can now use your site's template engine syntax — for example Twig's {{ variable }} references — in addition to the classic %placeholder% tokens, so dynamic email content renders correctly. Existing placeholder-style templates continue to work unchanged.
  • Form save buttons are now disabled the moment a form is submitted, preventing duplicate records or submissions caused by accidental double-clicks or a slow response.
  • Fixed an issue where saving a record that had an unpublished draft in progress could fail with a permission error; updates are now based on the active published version.
  • Restored the blog and post count properties — total and published posts and comments — that some themes and integrations rely on, which had stopped returning values.
  • Deleting a form element in the content builder while its settings panel is open now closes that panel automatically, instead of leaving it open on the removed element.
  • Fixed forms builder drag-and-drop so that moving fields into or out of a group element now updates the correct group.
  • Editing a product description that has only one available layout no longer shows an empty layout box.
  • Corrected the rich text editor toolbar so it no longer appears misaligned when an editor loads below the page header.
  • In development environments, edits to Twig templates are now picked up immediately by long-running processes, instead of being ignored until the process restarts.
Go deeper

Was this page helpful?

Your answer goes to the docs team.