Our.Umbraco.HideIt 18.0.4

dotnet add package Our.Umbraco.HideIt --version 18.0.4
                    
NuGet\Install-Package Our.Umbraco.HideIt -Version 18.0.4
                    
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="Our.Umbraco.HideIt" Version="18.0.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Our.Umbraco.HideIt" Version="18.0.4" />
                    
Directory.Packages.props
<PackageReference Include="Our.Umbraco.HideIt" />
                    
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 Our.Umbraco.HideIt --version 18.0.4
                    
#r "nuget: Our.Umbraco.HideIt, 18.0.4"
                    
#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 Our.Umbraco.HideIt@18.0.4
                    
#: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=Our.Umbraco.HideIt&version=18.0.4
                    
Install as a Cake Addin
#tool nuget:?package=Our.Umbraco.HideIt&version=18.0.4
                    
Install as a Cake Tool

Hide It

The "now you see me, now you don't" package for Umbraco Block List and Block Grid!

Ever wanted to temporarily hide a block without deleting it? Maybe it's a seasonal promo, a work-in-progress section, or that testimonial from your ex-client. Whatever the reason - Hide It has your back.

Works with both Block List and Block Grid editors.

What's in the Box?

  • One-Click Toggle — Eye icon right there in the block action bar. Click it. Done.
  • Visual Feedback — Hidden blocks get dimmed so you know what's hiding
  • Zero View Changes — Hidden blocks vanish from the frontend automagically
  • Search-Safe Content — Hidden block content is excluded from Umbraco search indexing
  • Nested Support — BlockGrid areas? Yep, filters all the way down

Installation

dotnet add package Our.Umbraco.HideIt

Setup (It's Stupid Simple)

  1. Add a True/False property to your block's Settings element type
  2. Give it the alias hideIt
  3. There is no step 3

The toggle appears. The magic happens. Your frontend stays clean.

Need more control? See Advanced / Extensibility near the end.

How It Works

On the Frontend

Nothing! That's the point. Hidden blocks just... aren't there. The package intercepts Umbraco's property converters and filters them out before your views even see them.

Requirements

  • Umbraco 17.5+ (that's when block actions became a thing) or 18.x
  • .NET 10.0

Versions

Package Version Umbraco Version
18.x 18.0.0 - 18.x
17.x 17.5.0 - 17.x

Advanced / Extensibility

Custom Alias

Maybe hideIt isn't your style, or you're migrating a site that already has its own "hide this" property. Point Hide It at any alias in appsettings.json:

{
  "HideIt": {
    "PropertyAlias": "hideFromSite"
  }
}

Both the backoffice toggle and the frontend filtering pick up the custom alias. Leave the setting out and the default hideIt keeps working.

Want Full Control of Block Styling?

Set HideIt:CssPath to your own stylesheet path in appsettings.json:

{
  "HideIt": {
    "CssPath": "/css/hideit-custom.css"
  }
}
  • If CssPath is not set, Hide It keeps the current default dimmed styling for hidden blocks.
  • If CssPath is set, Hide It skips its default styling and loads your stylesheet instead (including inside block-entry shadow roots).

Hide It adds these state markers on each block entry:

  • Hidden state: data-hideit-hidden attribute + .hideit-block--hidden class
  • Visible state: .hideit-block--visible class

Use those selectors in your CSS to style hidden/visible blocks exactly how you want.

Custom Action Icons

You can override the action icon for both states in appsettings.json:

{
  "HideIt": {
    "VisibleIcon": "/icons/power.svg",
    "HiddenIcon": "/icons/power-off.svg"
  }
}
  • VisibleIcon controls the icon shown when the block is currently visible.
  • HiddenIcon controls the icon shown when the block is currently hidden.
  • Values must be SVG paths (for example /icons/power.svg).

Manual Filtering

Don't trust the magic? Fair. Extension methods are available:

using HideIt;

// Filter manually
var visibleBlocks = Model.Blocks.WhereVisible();
var visibleGrid = Model.Grid.WhereVisible();

// Check a single block
if (!block.IsBlockHidden())
{
    // This block is ready for its close-up
}

Custom Block Conversion Pipeline

If you previously replaced BlockListPropertyValueConverter or BlockGridPropertyValueConverter, switch to Hide It's filter extension points instead:

using HideIt;
using Umbraco.Cms.Core.Models.Blocks;

public class MyCustomBlockListFilter : IHideItBlockListFilter {
    public BlockListModel Filter(BlockListModel model) {
        // Your custom filtering/transformation
        return model;
    }
}

public class MyCustomBlockGridFilter : IHideItBlockGridFilter {
    public BlockGridModel Filter(BlockGridModel model) {
        // Your custom filtering/transformation
        return model;
    }
}

builder.Services.AddSingleton<IHideItBlockListFilter, MyCustomBlockListFilter>();
builder.Services.AddSingleton<IHideItBlockGridFilter, MyCustomBlockGridFilter>();

This keeps Hide It's built-in hide logic and your custom logic in the same pipeline without chained converter Replace<>() calls.

Contributing

Local Umbraco test site

An in-repo Umbraco 18 site is available under HideIt.Test.

  • Open HideIt.slnx
  • Start HideIt.Test with IIS Express or the Umbraco.Web.UI profile
  • The site uses the local HideIt.csproj via project reference, so backoffice/frontend changes are picked up automatically
  • The sample is intentionally a single-page homepage test surface focused on Content Rows (Block List) and Content Grid (Block Grid)
  • The sample ships with a seeded SQLite database, so you can start testing immediately
  • Backoffice login: admin@example.com / 1234567890

Found a bug? Create an issue here. Got an idea? PRs welcome!

License

MIT

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
18.0.4 87 9/5/2026
18.0.3 121 8/23/2026
18.0.2 100 8/13/2026
18.0.1 92 8/10/2026
18.0.0 91 8/9/2026
17.5.9 84 9/5/2026
17.5.8 124 8/23/2026
17.5.7 185 8/13/2026
17.5.6 103 8/13/2026
17.5.5 96 8/11/2026
17.5.4 89 8/10/2026
17.5.3 96 8/9/2026
17.5.2 129 8/9/2026