Added
- Added migration support for MenuBuilder menus, hierarchical items, site restrictions, element links, link attributes, and compatible dynamic sources.
Changed
- Documented the GraphQL node interface and corrected examples and arguments to match the schema.
- Custom URLs no longer expand environment variables or aliases. Replace these references with a relative URL, a literal destination, or the sandboxed
{site.baseUrl}token.
Fixed
- Fixed prepared node queries failing in template helpers when they returned results.
- Fixed custom field values reading or exporting as empty after a failed menu update import.
- Fixed menu content being unavailable when live structure saves are enabled.
- Fixed live structure changes showing an unsaved order after a rejected save or a rapid return to the original order.
- Fixed JSON imports selecting incorrect or missing Site and Dynamic sources when database IDs differ between environments.
- Fixed the maximum node count being exceeded when duplicating, importing, creating, or restoring nodes.
- Fixed Duplicate and Delete actions failing from menu settings.
- Fixed new nodes losing their initial URL and suffix on propagated sites.
- Fixed filtered and reordered node reads losing results or changing stored structure data when saved.
- Fixed restoring a deleted menu losing the order of its nodes.
- Fixed failed menu restores leaving partially restored content that could not be retried.
- Fixed custom element-backed node types missing linked content updates, deletion, and restoration.
- Fixed cached nodes losing their creation and modification dates.
- Fixed hierarchy queries dropping disabled children when all statuses were requested.
- Fixed GraphQL queries failing when requesting node data.
- Fixed GraphQL menu queries omitting inherited element fields.
- Fixed Dynamic GraphQL nodes omitting interface fields and schema type information.
- Fixed Dynamic asset links using the wrong site’s translated content.
- Fixed the default render helper failing on Dynamic children.
- Fixed Dynamic children ignoring the linked-element output option in JSON trees.
- Fixed node titles set to
0being replaced with their default titles when saving. - Fixed malformed JSON imports failing without a way to upload a corrected file.
- Fixed zero-valued URLs and attributes being lost in link helpers, breadcrumbs, and active-state matching.
- Fixed Feed Me failing to resolve linked elements by ID or custom-field value.
- Fixed Feed Me skipping changes to nested children when their parent node was unchanged.
- Fixed JSON backups losing translated node titles, custom fields, and per-site enabled states.
- Fixed an XSS vulnerability.
- Fixed an information disclosure vulnerability.
- Fixed nodes from disabled menu sites appearing in public queries and GraphQL.
- Fixed stale linked-content deletion and restoration state when menu sites were disabled and re-enabled, and preserved disabled links when restoring into a single-site menu.
- Fixed re-enabling a menu site failing to recreate removed node variants.
- Fixed an authorization vulnerability.
- Fixed linked content deletion and restoration failing after a menu site was disabled.
- Fixed deleting and restoring a section or category group losing linked nodes’ enabled states on individual sites.
- Fixed JSON imports, exports, and plugin migrations failing to resolve linked elements that only exist on another site.
- Fixed wrapped JSON imports creating a duplicate menu without an explicit import action.
- Fixed default JSON exports omitting independent site branches and links from menus enabled only on a secondary site.
- Fixed the relative Custom URL
0being lost during JSON export. - Fixed JSON imports reversing node order when new nodes are placed at the beginning of a menu.
- Fixed JSON imports losing custom field values when creating a menu without its original field layouts.
- Fixed uninstalling Navigation failing on deleted menus with custom field values or leaving orphaned Craft elements, field layouts, and structures.
- Fixed node type changes retaining an incompatible or missing linked element in the editor, and failing draft autosaves when clearing the element picker.