Version 2.0.27

March 18, 2024

Fixed

  • Fix an issue with Node elements not being correctly displayed in element indexes, outside of navigation-editing contexts.

Version 2.0.26

March 4, 2024

Fixed

  • Fix order of operations when uninstalling the plugin.

Version 2.0.25

January 30, 2024

Added

  • Add support for active node state when using non-query string pagination.

Fixed

  • Fix icon alignment for nodes when new window or title override is set.

Version 2.0.24

January 6, 2024

Fixed

  • Fix not being able to manage navigations with bypassProjectConfig enabled.
  • Fix the “Edit” button on nodes not appearing after saving a node.

Version 2.0.23

December 8, 2023

Added

  • Add navigation/navs/fix-sites console command to fix missing navigation_navs_sites entries for failed Craft 3 > 4 migrations.

Changed

  • Change max-level check when moving elements to base-plugin for performance.
  • Swap hasDescendants with children to make use of eager-loading performance.

Fixed

  • Fix element node modal’s site not changing to the same site as the navigation.
  • Fix validation checks when moving nodes between levels.
  • Fix an error when adding elements to a navigation.
  • Fix the “Edit” button on nodes not appearing after saving a node.

Version 2.0.22

October 25, 2023

Added

  • Add Markdown support for navigation intstructions.

Fixed

  • Fix being able to circumvent max nodes level settings when moving nodes in the structure.
  • Fix custom UI for element index showing when viewing Nodes outside of Navigation.

Version 2.0.21

September 8, 2023

Added

  • Add the ability to use NodeQuery objects in all craft.navigation.* Twig calls.
  • Add missing french translations. (thanks @pascalminator).

Fixed

  • Fix element fields not saving correctly in Craft 4.4+.
  • Fix some custom field values not saving correctly.
  • Fix an error when restoring a deleted nav.

Version 2.0.20

August 9, 2023

Added

  • Add aria-current=“page” to craft.navigation.render().
  • Add Node::getCurrent().

Fixed

  • Fix an error when running resave/navigation-nodes.

Version 2.0.19

July 11, 2023

Added

  • Add NodeType::beforeSaveNode.
  • Add NodeType::getDefaultTitle.

Fixed

  • Fix Site not not using the site name as the default title.

Version 2.0.18

May 27, 2023

Fixed

  • Fix incorrect sources for element nodes in the element slide-out.
  • Fix when editing an existing navigation, being unable to pick site-specific elements (for element nodes).

Version 2.0.17

March 21, 2023

Changed

  • Improve querying nodes performanc for large sites (with a large project config).

Fixed

  • Fix an error when adding new nodes for large navigations.
  • Fix search and sort filters showing when editing a navigation.
  • Fix a JS error for users with the control panel set to a language containing special characters, and when switching sites when editing nodes.
  • Fix being unable to delete a navigation from the edit screen.

Version 2.0.16

January 6, 2023

Changed

  • Only admins are now allowed to access plugin settings.

Fixed

  • Fix a Craft 3 > Craft 4 migration.

Version 2.0.15

December 14, 2022

Fixed

  • Fix an error when switching node types to non-elements.

Version 2.0.14

December 3, 2022

Fixed

  • Fix an issue where navigation_sites database entries weren’t being created correctly.

Version 2.0.13

November 22, 2022

Fixed

  • Fix an issue where navigation_sites database entries weren’t being created correctly for Craft 3 > Craft 4 upgrades.

Version 2.0.12

November 21, 2022

Changed

  • Element nodes now throw a validation error when a linked element is not selected.

Fixed

  • Fix an issue where empty custom attributes would create invalid HTML.

Version 2.0.11

November 9, 2022

Added

  • Add “Edit Nodes” button when editing a navigation’s settings.

Fixed

  • Fix validation not working correctly when setting “Max Levels”, “Max Nodes” or “Max Nodes per Level”.
  • Fixed PHP errors that could occur when executing GraphQL queries.
  • Fix GraphQL queries on a Navigation field when no navigation is chosen returning incorrect nodes.

Version 2.0.10

October 28, 2022

Fixed

  • Fix an error when migrating from 2.0.8.

Version 2.0.9

October 28, 2022

Added

  • Add the ability to set "Propagation Method" on navigations, to include site group, or language-specific propagation settings.
  • Add “Max Nodes per Level” navigation setting to control the number of nodes per-level.
  • Add ability to duplicate navigation.
  • Add error-handling for GraphQL queries when the schema didn’t allow querying on linked element types.

Changed

  • Nodes are propagated to all enabled sites for the navigation by default (for multi-sites).
  • When changing the "Propagation Method" for navigations, nodes are now re-saved via a queue job, to assist with large navigations.

Fixed

  • Fix some issues with node propagation.
  • Fix element actions not appearing due to Craft 4.3 changes.

Removed

  • Removed A&M Nav and Navee Craft 2 migrations, as these are no longer applicable in Craft 4.

Version 2.0.8

October 25, 2022

Added

  • Add support for GraphQL querying on Navigation field within other elements.

Version 2.0.7

October 17, 2022

Added

  • Add the ability to set conditions on navigation field layout attributes and fields depending on node type.
  • Add element and elementType to breadcrumb items.
  • Add back link attribute for breadcrumbs.

Changed

  • Set dirty attributes for track changes when saving a node.

Fixed

  • Fix an error when saving a node, when switching its type.
  • Fix a formatting issue when saving nodes and the toast notification.
  • Fix the “Parent” value resetting after adding a node.

Version 2.0.6

September 25, 2022

Changed

  • Revamp breadcrumbs() function to include non-elements.

Fixed

  • Fix incorrect node/list names for gatsby-source-craft plugin.
  • Fix reordering a navigation with bypassProjectConfig enabled.
  • Fix deleting a navigation with bypassProjectConfig enabled.
  • Fix a Craft 3 migration error when navigations contain no site settings.

Version 2.0.5

August 31, 2022

Added

  • Add migration to fix non-multi-site’s not being enabled.

Fixed

  • Fix a Craft 3 migration issue where site-specific navigations weren’t marked as enabled.
  • Fix an error running resave console commands.

Version 2.0.4

August 25, 2022

Added

  • Add site dropdown to navigation index.
  • Add missing English Translations.

Fixed

  • Fix getSiteIds() not returning correctly for just the enabled sites.
  • Fix an error when uninstalling.

Version 2.0.3

July 2, 2022

Added

  • Changes from 1.4.27.

Version 2.0.2

June 1, 2022

Fixed

  • Fix an error when migrating non-multisites from Craft 3.
  • Fix incorrect permission check for structure items, when editing nodes.
  • Fix an error when trying to fetch parent nodes for a non-multi-site install when editing nodes.

Version 2.0.1

May 18, 2022

Added

  • Added active, target and element items to buildNavTree.
  • Added French translation (thanks @pascalminator).
  • Added hasChildrenClass setting to navigation.render. Now also includes a nav-children class on <li> elements that have children.

Changed

  • Using navgation.render() now uses eager-loading by default.
  • Move Add a … strings to navigation translation strings.

Fixed

  • Fixed missing instruction text when editing a navigation.
  • Fixed node.hasActiveChild returning true incorrectly.

Version 2.0.0

May 6, 2022

Added

  • When editing nodes, you can now toggle the status of nodes, view trashed nodes, and restore nodes.
  • When editing nodes, you can now duplicate, duplicate with descendants, delete, delete with descendants with multiple nodes.
  • When editing nodes, you can now add UI elements to node layouts.
  • Added the ability to set the default placement of new nodes, when adding them to a navigation.
  • Added the ability to set the color for custom nodes and registered elements, which show as the color indicator on the type of node in the navigation builder.
  • Add nested node support for Feed Me.
  • Add checks for registering events for performance.
  • Add project-config/rebuild support.
  • Add archiveTableIfExists() to install migration.

Changed

  • Now requires PHP 8.0.2+.
  • Now requires Craft 4.0.0+.
  • Now requires Navigation 1.4.24 in order to update from Craft 3.
  • Redesigned UI for editing navigation nodes.
  • When editing nodes, toggling the site is much quicker.
  • When editing nodes, we now lazy-load collapsed nodes to improve performance.
  • Editing nodes is now performed through slide-out menu, instead of HUD. This gives users much more room to edit content.
  • Editing nodes now properly supports multi-tabs for custom fields and UI elements.
  • All node attributes are now native fields. They can be included or excluded as needed, with the bonus of supporting conditions (show certain attributes based on user permissions). This can help simplify and streamline editing nodes for users.
  • When editing nodes, URL Suffix, Classes and Custom Attributes are now in an "Advanced" tab.
  • Changed Node::isManual() to Node::isCustom().
  • Custom URL nodes are now a Node Type - verbb\navigation\nodetypes\CustomType.
  • Rename base plugin methods.
  • Support new DefineElementInnerHtmlEvent event for modifying element index html.

Fixed

  • Fix an error with GraphQL.
  • Fix an error with incorrect NodeType casting.
  • Fix an error if Commerce is is enabled, but doesn’t exist.
  • Fix some scenarios in the navigation builder, when you were unable to nest nodes under another node, or be able to un-nest.
  • Fix an error when trying to set a new nodes parent.
  • Fix a nested node having its level reset when saving.
  • Fix another legacy site settings check.
  • Fix custom node’s URLs being blank.
  • Fix an error with Feed Me beta.
  • Fix icon alignment for node table rows.
  • Fix being unable to save non-element type nodes.
  • Fix lack of checking for node element in some places.
  • Fix an error when trying to create a navigation on a non-multi-site.

Removed

  • Removed NodeType::hasClasses() and NodeType::hasAttributes() which are now controlled by native fields.

Version 1.4.31

November 21, 2022

Fixed

  • Fix an issue where empty custom attributes would create invalid HTML.

Version 1.4.30

October 28, 2022

Fixed

  • Fix URL Suffix setting not being reset when changing from an element to non-element node type.

Version 1.4.29

October 25, 2022

Added

  • Add support for GraphQL querying on Navigation field within other elements.

Version 1.4.28

July 15, 2022

Fixed

  • Fix an error when resaving nodes for a site.

Version 1.4.27

July 2, 2022

Fixed

  • Fix partial URLs incorrectly marked as active /newsletter and /news.
  • Fix duplicated nodes when not propagating nodes, when a new site is enabled in the nav settings, and existing nodes already exist.

Version 1.4.26

April 23, 2022

Fixed

  • Fix fetching element sources when rendering nodes (causing of many things, user temporary upload folders to be created) and improve performance.
  • Fix SQL query error when trying to restore trashed nodes for a nav.

Version 1.4.25

April 6, 2022

Added

  • Add more error handling to navigation migrations.
  • Add resave/navigation-nodes CLI command to resave nodes in bulk.

Changed

  • Improve performance of node->url.

Fixed

  • Fix an error with Navee migration and parent nodes.
  • Fix linkAttributes() not merging in attributes defined in the control panel for the node, with template attributes
  • Fix an error when migrating navigations from A&M Nav or Navee regarding enabled sites.

Version 1.4.24

January 22, 2022

Fixed

  • Fix when turning on node propagation, node elements aren't re-saved in each site (for multi-sites).
  • Fix an error when turning off node propagation, which would effect all navigation nodes, instead of the navigation being edited.

Version 1.4.23

December 31, 2021

Fixed

  • Fix custom node types not having their class set correctly in the control panel.
  • Fix validation errors not appearing when saving a navigation.

Version 1.4.22

October 30, 2021

Changed

  • Now requires Craft 3.6.0+.

Fixed

  • Fix Navee migration, where nodes weren't maintaining their structure. (thanks @iainsaxon).
  • Fix GraphQL generator issues in some cases (Gatsby Helper).
  • Fix an error with Gatsby Helper plugin.
  • Fix when deleting navigations their nodes not being marked as deleted, on a multi-site, without node propagation disabled.

Version 1.4.21

August 25, 2021

Fixed

  • Improve displayName twig function.
  • Fix an error when saving a linked element, when the node was deleted.

Version 1.4.20

July 19, 2021

Fixed

  • Fix HUD overflow issue for some plugins (Icon Picker).
  • Fix an error when propagating elements on multi-sites, where navigation nodes didn’t support the site an element is propagating into.

Version 1.4.19

July 10, 2021

Fixed

  • Fix an error when saving settings for the first time. (thanks @boboldehampsink).

Version 1.4.18

June 20, 2021

Fixed

  • Fix when turning off node propagation, duplicate nodes would occur.
  • Fix when turning off node propagation, the node hierarchy and order would be incorrect.
  • Fix nodes not propagating correctly when a navigation was turned on. Nodes should only be duplicated when turned off.

Version 1.4.17

June 5, 2021

Changed

  • Improve query performance for large sites (with a large project config). Typically a 50-70% improvement in rendering speed.

Fixed

  • Fix navHandle and navName for GraphQL producing errors.

Version 1.4.16

May 8, 2021

Added

  • Add edit structure authorize to save node controller action.
  • Add validation rules for navigations to ensure at least one site is enabled, for multi-site installs.

Fixed

  • Fix an error when adding a new site, and propagating nodes.
  • Fix an error when saving a site node.
  • Fix querying navigation nodes with GraphQL with only “View all navigations” schema permissions set.
  • Fix getActiveNode() no matching a node if the current URL contained a query string.
  • Fix potential error when non-element type nodes have element information leftover.

Version 1.4.15

March 13, 2021

Fixed

  • Fix an error when trying to view the default navigation, if the user didn’t have permission to access the primary site.
  • Fix an error that would occur when switching an element node to a non-element node (Entry to Passive).
  • Fix type label not updating when switching to a different node type.

Version 1.4.14

March 4, 2021

Fixed

  • Fix nodeUri returning the incorrect value for multi-sites with GraphQL.
  • Fix when no site selected, the primary site not being used when editing a navigation.
  • Fix when selecting element nodes on multi-sites, the element selector modal now defaults to the currently editing site.

Version 1.4.13

January 26, 2021

Fixed

  • Fix passive nodes being marked as active.
  • Ensure active state checks only check against nodes with URLs.
  • Fix potential error with GraphQL and querying customAttributes and data.

Version 1.4.12

January 15, 2021

Added

Fixed

  • Fix “Clear Nodes” clearing the primary site’s nodes, instead of the currently-editing site’s nodes.
  • Fix incorrect redirect when clearing nodes.
  • Fix when disabling propagation, node levels weren’t being retained and resetting to the root level.

Version 1.4.11

January 14, 2021

Fixed

  • Fix for non-absolute, non-root-relative nodes not getting their active state set correctly.

Version 1.4.10

December 22, 2020

Fixed

  • Fix getSupportedSites() for a node always returning all sites.

Version 1.4.9

December 15, 2020

Added

  • Add node.isSite() and node.isPassive().

Fixed

  • Fix a potential error during migration, where a “All elements must have at least one site associated with them” warning might appear.
  • Fix an error when trying to edit a navigation with no enabled sites.

Version 1.4.8

December 11, 2020

Fixed

  • Fix EVENT_REGISTER_GQL_SCHEMA_COMPONENTS error when running Navigation on Craft 3.4.x sites.
  • Fix showing sites where a user might not have permission to access.
  • Fix when setting a navigation to not propagate nodes, existing nodes should be created for new sites.

Version 1.4.7

December 7, 2020

Fixed

  • Fix node type not persisting to a custom URL when editing a node (again).

Version 1.4.6

December 7, 2020

Changed

  • Navigation node queries via GraphQL are now no longer automatically included in the public schema.

Fixed

  • Fix node type not persisting to a custom URL when editing a node.
  • Fix nodes propagating to all user-enabled sites, instead of the site a navigation is enabled for.

Version 1.4.5

December 2, 2020

Fixed

  • Fix potential issue with Feed Me throwing errors when not installed or found.
  • Fix node type dropdown in node edit modal not showing the correct enabled node types.

Version 1.4.4

November 29, 2020

Changed

  • Node field layout designer no longer allows tabs of fields.

Fixed

  • Fix error when accessing navigation nodes for a navigation that was not enabled.
  • Fix list of editable navigations not being correct, when editing a navigation. This could cause loading the incorrect (un-editable) nav in some instances.
  • Fix node custom fields not showing overrides (label, instructions) as defined in the field layout designer.

Version 1.4.3

November 16, 2020

Added

  • Add hasUrl() node query param.

Fixed

  • Fix element permissions for navigations not working correctly for non-english users.
  • Allow navigation instructions to include line-breaks.

Version 1.4.2

November 3, 2020

Added

  • Add support for all registered elements, including third-party ones that support hasUris. Element support can be managed in the navigation settings.
  • Add URL for element nodes when hovering over the node type.
  • Add URL for element nodes in node edit modal.

Changed

  • Refactor render template to use Twig attr function for cleaner templates.

Fixed

  • Fix unnecessary empty attributes being outputted when using craft.navigation.render().

Version 1.4.1

October 20, 2020

Fixed

  • Fix unnecessary additional queries for nodes.

Version 1.4.0

October 18, 2020

Added

  • Significantly improved performance when adding multiple nodes at once.
  • Add passive node type. Perfect for headings, dividers or other UI-related nodes that don't have a URL.
  • Add “Clear Nodes” button when editing navigations.
  • Add “Settings” button when editing navigations.
  • Add Permissions to navigations, allowing specific sections/groups/volumes/etc to be enabled to add elements from.
  • Add Enable/Disable for each node type for navigations. Allows easier customising of available nodes to add from.
  • Add Feed Me support. Navigation nodes can now be imported using Feed Me.
  • Add site settings to navigations, to control which sites can have the navigation enabled for.
  • Add hasAttributes function to node types.

Changed

  • Removed disabledElements config setting. This is now managed at the plugin level.

Fixed

  • Fix active node checking when special characters are in URLs.
  • Navee migration is now complete, handling migrating nested nodes.
  • Fix modal node editor not respecting node type settings for field options available to edit.
  • Fix adding multiple nodes at once often being added out of order.

Version 1.3.31

September 29, 2020

Added

  • Add propagateSiteElements config setting to help with multi-site menus. Navigation will use the equivalent element for each site automatically for multi-site menus. But you might want to pick specific elements across your sites, and have them the same across all your navigations.

Version 1.3.30

September 27, 2020

Fixed

  • Fix homepage entry active state check when outputting multiple different sites navs on a single site.
  • Fix error when trying to get the active state for a node with an empty URL.
  • Fix custom attributes in GraphQL not returning an object.

Version 1.3.29

September 16, 2020

Fixed

  • Fix detection of active parameter on multi-site setups.
  • Fix nodes being unlinked to their element in some special circumstances.

Version 1.3.28

August 31, 2020

Changed

  • For site nodes, the trailing slash is now trimmed for the site URL.

Fixed

  • Fix node being marked as active for partial matches where the URLs contain the same words.
  • Fix default site when editing a nav to be the first editable for a user.

Version 1.3.27

August 20, 2020

Fixed

  • Fix edit menu button showing with allowAdminChanges = false.
  • Fix overflow in model node edit window, effecting some custom fields.

Version 1.3.26

August 14, 2020

Fixed

  • Fix active-state check for nodes, which weren't catering for multi-sites with a sub-directory in their base url.

Version 1.3.25

August 11, 2020

Fixed

  • Update node->uri to node->nodeUri, prevents URI issues when saving elements.
  • Update migration to log potential errors.

Version 1.3.24

August 10, 2020

Added

  • Add settings button when editing a navigation.
  • Add uri property to node.

Fixed

  • Fix incorrect translation for settings in navigation index.
  • Fix elementSiteId error caused by Craft 3.5 changes.

Version 1.3.23

August 5, 2020

Fixed

  • Fix elementSiteId not saving for nodes in Craft 3.5+.
  • Fix deprecation notice for enabledForSite.

Version 1.3.22

July 22, 2020

Fixed

  • Fix custom node types with hasTitle = false.
  • Fix custom node types with long names in the CP.
  • Ensure the the primary site is selected when editing a nav, rather than the first editable nav.

Version 1.3.21

June 24, 2020

Fixed

  • Fix element still being referenced for a node when switching it to a custom URL..

Version 1.3.20

June 22, 2020

Added

  • Add getModalHtml for custom node types.

Fixed

  • Fix JS errors when there are multiple custom node types.
  • Ensure custom node types have their node set, as early as possible.
  • Ensure custom node types save the url property.

Version 1.3.19

June 6, 2020

Fixed

  • Fix JS error when editing navigations.

Version 1.3.18

June 5, 2020

Fixed

  • Fix checking to see if Commerce is installed to enable products.

Version 1.3.17

June 2, 2020

Fixed

  • Fix incorrect site being selected when editing a nav.

Version 1.3.16

May 29, 2020

Fixed

  • Fix site dropdown selection not persisting from element indexes

Version 1.3.15

May 20, 2020

Fixed

  • Fix activeNode taking into account the suffix for a URL. Active nodes will now return regardless of the defined suffix.
  • Fixed deprecation error on buildNavTree . (thanks @jaydensmith).

Version 1.3.14

May 11, 2020

Fixed

  • Fix site URL errors on Craft 3.5 beta.

Version 1.3.13

April 28, 2020

Fixed

  • Fix custom URL getting overwritten when selecting elements in custom fields.

Version 1.3.12

April 18, 2020

Added

  • Allow getActiveNode() to include option to match against children being active.

Version 1.3.11

April 16, 2020

Fixed

  • Fix logging error Call to undefined method setFileLogging().

Version 1.3.10

April 15, 2020

Changed

  • File logging now checks if the overall Craft app uses file logging.
  • Log files now only include GET and POST additional variables.

Version 1.3.9

April 14, 2020

Fixed

  • Use getBaseUrl() for parsing Site node type URLs.
  • Fix sort order not persisting when saving navs.
  • Fix custom attributes rendering incorrectly when using node.link.

Version 1.3.8

April 2, 2020

Fixed

  • Ensure plugin project config is removed when uninstalling.
  • Fix incorrect permissions being enforced for new navs.

Version 1.3.7

March 30, 2020

Changed

  • Refactored getLink() and pass classes and custom attribute values through renderObjectTemplate(). (thanks @jaydensmith).

Fixed

  • Hide nav settings URL if the user doesn’t have permission.
  • Fix malformed UTF-8 characters when adding a node.

Version 1.3.6

February 24, 2020

Changed

  • Ensure saving node’s URL is kept raw, and not the generated URL.
  • Allow Twig to be used in node’s URLs, so you can use for example {{ siteUrl('blog') }} for site-specific URLs.

Fixed

  • Add element site menu to node editor HUD. (thanks @steverowling).
  • Fix double escaping of nav titles in vue admin tables. (thanks @steverowling).

Version 1.3.5

February 12, 2020

Fixed

  • Fix potential fatal error when upgrading from previous Craft/plugin versions.

Version 1.3.4

February 11, 2020

Added

  • Add more functionality to node types, now fully-featured!
  • Add Site node type, for selecting whole sites, and using their Base URL.

Fixed

  • Fix error for site node types when propagating.
  • Bring gql implementation up to speed.
  • Fix JS error when adding a manual node.

Version 1.3.3

February 5, 2020

Fixed

  • Fix disabled state incorrectly showing when saving a node.
  • Fix Navee migration.

Version 1.3.2

February 3, 2020

Fixed

  • Fix migration issues when other migrations save elements.

Version 1.3.1

February 1, 2020

Changed

  • Revert behaviour of URL generation. No longer enforce the use of Craft’s url() function when generating URLs for nodes.

Version 1.3.0

January 29, 2020

Added

  • Craft 3.4 compatibility.

Version 1.2.4

January 9, 2020

Fixed

  • Fix empty URL being overridden.
  • Change url to use siteUrl instead of url.

Version 1.2.3

January 9, 2020

Fixed

  • Fix error thrown when saving a node's element in some cases.

Version 1.2.2

January 9, 2020

Fixed

  • Fix missing displayName twig function.
  • Fix project config issue with maxNodes.

Version 1.2.1

January 9, 2020

Fixed

  • Fix GraphQL issue when querying children.

Version 1.2.0

January 8, 2020

Added

  • Add custom field support for navigation nodes. Add any additional fields to each node! (thanks @jaydensmith).
  • Allow swapping of an element in the HUD for a node, once the node has been created.
  • Add feature to switch node type for existing nodes. Makes it easy to switch from Entry to Custom URL.
  • Add GraphQL support. See docs.
  • Add custom node types. The ability to define your own custom type of nodes. See docs.
  • Add custom attributes for nodes. Define your own attributes (think data-scroll, etc) attached to the anchor tag for each node.
  • Add URL suffix for nodes - in case you want to add #example or ?some-query=value to element URLs.
  • Add max nodes option for navs to limit the number of nodes in a nav.
  • Add separate user permissions for create/edit/delete navs.

Changed

  • Run non-full URLs through Craft's url() function. This will help defining relative URLs, so they don't always need to begin with a /.

Version 1.1.14.1

November 27, 2019

Fixed

  • Fix pesky debug output!

Version 1.1.14

November 27, 2019

Added

  • Add Navee migration + add panels to settings.
  • Add EVENT_NODE_ACTIVE.
  • Add disabledElements to disable certain element from being added to navs.
  • Add getAllNavs(). Thanks @lewisjenkins.

Fixed

  • Update permissions to act correctly.
  • Fix potential error when deleting nodes.
  • Improve save-element checks for elements that have a URL.
  • Fix being unable to create new nav with the same handle as a deleted one.

Version 1.1.13

July 24, 2019

Added

  • Add better multi-site handling to A&M nav migration.

Changed

  • Hide the “Parent” select field when the nav’s max levels are 1.
  • Update node propagation to use getSupportedSites().

Fixed

  • Fix error when saving a nav in some instances.
  • Fix lack of permission enforcement for navs.
  • Fix type mismatch error on PostgreSQL. (thanks @boboldehampsink).

Version 1.1.12

May 15, 2019

Added

  • Add craft.navigation.getNavById().
  • Add craft.navigation.getNavByHandle().
  • Add feedback to A&M nav migration.

Changed

  • Min requirement to Craft 3.1.x.

Fixed

  • Fix A&M migration not using the sites’ language to match nodes on.

Version 1.1.11

March 19, 2019

Fixed

  • Fix not being able to edit nodes with allowAdminChanges enabled.
  • Fix error when propagating a manual node in a multi-site setup.

Version 1.1.10

March 17, 2019

Fixed

  • Fix schema version check in migration.
  • Ensure navs are read-only when allowAdminChanges is true.

Version 1.1.9.1

March 15, 2019

Fixed

  • Fix migration issue, caused in some instances.

Version 1.1.9

March 15, 2019

Added

  • Add override notice for settings fields.
  • Support for project config.

Fixed

  • Fix linked element URL query to afterPrepare().
  • Fix error when deleting nodes.
  • Fix Postgres error for querying linked element URLs.

Version 1.1.8

March 10, 2019

Added

  • Add craft.navigation.tree().

Changed

  • Remove elementSiteId and refactor linked element’s siteId handling.
  • Removes the need to create individual elements for each node when propagating is true.
  • Better way to store the linked element’s siteId, via the node’s slug.

Fixed

  • Fix errors when adding multiple site-enabled nodes to a nav.
  • Better validation when trying to create a nav with a duplicate handle.

Version 1.1.7.3

March 7, 2019

Fixed

  • Fix migration a little more.

Version 1.1.7.2

March 7, 2019

Fixed

  • Fix navigation field to use handle.
  • Add migration for IDs or Nav models saved for content.

Version 1.1.7.1

March 7, 2019

Fixed

  • Fix string being passed to getNavById(), no need to be that strict.

Version 1.1.7

March 7, 2019

Changed

  • Improved the field to return the navigation model.

Version 1.1.6

March 3, 2019

Fixed

  • Remove A&M Nav migration from install, where it can produce an error in some circumstances.

Version 1.1.5

February 27, 2019

Added

  • Add node.target to return either _blank or an empty string if the node should open in a new window.

Version 1.1.4

February 24, 2019

Added

  • Add permissions for navs.
  • Support aliases in custom URL.

Fixed

  • Fix node titles’s not propagating correctly for nodes.

Version 1.1.3

February 11, 2019

Fixed

  • Fix error thrown on new installs (missing db column).

Version 1.1.2

February 10, 2019

Fixed

  • Fix node level not being applied on new nodes.
  • Fix not being able to see new nodes after all have been removed in the CP.
  • Fix sortOrder not being set for new navs.
  • Fix getActiveNode() reporting back parent as active.
  • Allow getActiveNode to use query criteria.

Version 1.1.1

February 9, 2019

Fixed

  • Fix migration issue for new installs.

Version 1.1.0

February 9, 2019

Added

  • Add navigation field.
  • Added classes to node.link.
  • Add new window and class indicators to nodes in CP.
  • Add indicator of custom title for nodes in the CP.
  • Add instructions to nav.
  • Add A&M Nav migration.
  • Added translatable icon to title.

Fixed

  • Fix error when deleting elements in a multi-site.
  • Fix node’s being active when they shouldn’t be (matching URLs too early).
  • Refactor multi-site propagation of nodes.
  • Fix node-type display issues when dragging node in CP.
  • Fix not fetching URL for elements that aren’t localised (assets).

Version 1.0.18

December 6, 2018

Added

  • Added hasActiveChild to node, for use when not using the {% nav %} twig tag.

Fixed

  • Fix migration issue from 1.0.16.1 to 1.0.17.2.

Version 1.0.17.2

November 25, 2018

Fixed

  • Fixed error in migration.

Version 1.0.17.1

November 24, 2018

Fixed

  • Fix migration from 1.0.17 in multi-site.

Version 1.0.17

November 23, 2018

Fixed

  • Fix some elements not having their elementSiteId set, causing multi-site navs to have no URLs.

Version 1.0.16.1

November 15, 2018

Fixed

  • Fix error thrown from console or queue requests when updating elements (for reals).

Version 1.0.16

November 15, 2018

Fixed

  • Fix error thrown from console or queue requests when updating elements.

Version 1.0.15

November 13, 2018

Fixed

  • Fix SQL errors thrown for new installs.

Version 1.0.14

November 12, 2018

Fixed

  • Fix error thrown on homepages.

Version 1.0.13

November 11, 2018

Changed

  • Massive performance improvements, lowering database queries by 98% and rendering speed to two-thirds the time.
  • Added elementSiteId for all nodes for better site-specific linked element handling.

Version 1.0.12

October 3, 2018

Fixed

  • Fixed a 404 issue due to incorrect URL when editing a nav's nodes.
  • Fixed a multi-site issue where the primary site's nodes were being shown, even if the user didn't have permission to edit those nodes.
  • Improved handling of pre-selecting localStorage siteId's (when already selecting a site from an element index).

Version 1.0.11

September 27, 2018

Added

  • Add attributes item to object for render() tag.
  • Add translation for enabledForSite (thanks @Saboteur777).

Fixed

  • Ensure nodes are propagated to newly-created sites (if set to propogate nodes in nav settings).
  • Adds support for detecting and updating the site id based on changes made when editing entries. (thanks @lemiwinkz).

Version 1.0.10

September 17, 2018

Fixed

  • Trim trailing slash in getActive method when addTrailingSlashesToUrls.
  • Add enabledForSite functionality to allow nodes to be enabled/disabled per site.
  • Fix error that could occur when trying to add a new node on a multi site setup.
  • Refactor render() variables to be cleaner and prevent activeClass error.
  • Fix node.link not working with the newWindow option set.

Version 1.0.9

August 28, 2018

Fixed

  • Fix missing column for propagateNodes in install (whoops).

Version 1.0.8

August 27, 2018

Fixed

  • Fix migration potentially not firing for propagateNodes.

Version 1.0.7

August 27, 2018

Fixed

  • Fix error thrown when not setting 'Propagate nodes'.

Version 1.0.6

August 26, 2018

Added

  • Added propagateNodes nav setting.
  • Added getNavByHandle().
  • Added activeClass to render() function.
  • Added getActiveNode().

Changed

  • Remove required URL for manual node.

Fixed

  • Fix lack of element registration.
  • Fix navigation’s maxLevels not working after changing or adding elements to the nav.
  • Improve active state on homepage.

Version 1.0.5

August 15, 2018

Added

  • Added breadcrumbs() functionality.
  • Hungarian translations added (thanks to @Saboteur777).

Fixed

  • Fix manual links and active state.

Version 1.0.4

August 6, 2018

Fixed

  • Fix parent select not always keeping value after adding a new node.
  • Remove leftover test values in manual node settings.
  • Fixed an error which could prevent the plugin from installing on PostgreSQL.

Version 1.0.3

July 27, 2018

Fixed

  • Fix being unable to fetch elements that are only in a non-primary site
  • Fix homepage being set to active on child page.
  • Fix deprecated notice.

Version 1.0.2

July 18, 2018

Changed

  • Modified active class to set the active class based on the current URL used.

Fixed

  • Fix render() method not resetting into template mode (thanks @billythekid).
  • Fix node parent not being active when child node is.

Version 1.0.1

July 17, 2018

Fixed

  • Fix missing alias name for prefixed tables (thanks @qbasic16).
  • Fix nodes saving URL for elements in some cases.

Version 1.0.0

July 13, 2018
  • Initial release.