HCS.UmbCustomHeader 1.0.0

dotnet add package HCS.UmbCustomHeader --version 1.0.0
                    
NuGet\Install-Package HCS.UmbCustomHeader -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="HCS.UmbCustomHeader" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="HCS.UmbCustomHeader" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="HCS.UmbCustomHeader" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add HCS.UmbCustomHeader --version 1.0.0
                    
#r "nuget: HCS.UmbCustomHeader, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package HCS.UmbCustomHeader@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=HCS.UmbCustomHeader&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=HCS.UmbCustomHeader&version=1.0.0
                    
Install as a Cake Tool

<p align="center"><img src="https://raw.githubusercontent.com/NikRimington/HCS.UmbCustomHeader/main/docs/images/icon.png" alt="HCS.UmbCustomHeader logo" width="96"></p>

Grouped Navigation

Group Umbraco backoffice sections into dropdowns in the top navigation, driven by appsettings.json.

Presentation only: grouping never grants or hides access. Sections still come from the user's group permissions and manifest conditions, and Umbraco's own route guards still apply.

Backoffice header with Management and Add-ons groups

Install

dotnet add package HCS.UmbCustomHeader

Requires Umbraco CMS 17.x.

Configure

{
  "HCS": {
    "UmbCustomHeader": {
      "Enabled": true,
      "Groups": [
        {
          "Alias": "management",
          "Label": "Management",
          "Icon": "icon-settings",
          "Sections": [ "Umb.Section.Settings", "Umb.Section.Users", "Umb.Section.Members" ]
        }
      ]
    }
  }
}

Environment variables use the same path with double underscores, for example HCS__UmbCustomHeader__Enabled=false.

The dropdown lists only the sections the current user can access:

Add-ons dropdown open

Setting Notes
Enabled false restores the native navigation.
Alias Unique per group.
Label Text or a localisation key such as #groupedNav_management.
Icon Optional icon alias shown beside the label.
Weight Optional. Places the group by weight among top-level items (higher first) instead of at its first member.
Sections Section aliases, in dropdown order. Unknown or inaccessible aliases are ignored.

Section aliases (checked against Umbraco 17.7 with Forms 17.6, Commerce 17.2 and Workflow 17.5):

Section Alias
Content, Media, Settings, Packages, Users, Members, Translation Umb.Section.<Name> (Users is Umb.Section.Users, Members is Umb.Section.Members)
Forms Umb.Section.Forms
Workflow Umb.Section.Workflow
Commerce commerce

Rules:

  • A group with no visible members is removed; with one visible member it renders as that section's plain tab.
  • A section listed in more than one group belongs to the first group only.
  • Invalid config (duplicate aliases, empty labels or sections) is logged and the native navigation is used.
  • Edits apply on the next backoffice load.

The package replaces the header's render method, as Umbraco has no extension point for header sections. If the header's structure changes, or another package already patched it, the package logs a warning and leaves the native navigation in place.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 83 10/21/2026