WordPress front-end performance

Stop loading an icon font nobody on the front end sees

Disable Dashicons stops WordPress from loading the Dashicons stylesheet for site visitors, an icon font built for the admin bar and admin interface, not your public pages.

  • Removes the Dashicons stylesheet from the front end for guests by default.
  • Optionally extends the removal to logged-in visitors too.
  • Never touches the admin, where Dashicons are actually used.
  • One less font request and file download on every public page.
Front-End PerformanceDisable Dashicons
Disable Dashicons on the frontendRemoves the icon font stylesheet for guest visitors.
Also for logged-in usersBy default Dashicons are only removed for guests. Enable this to remove them for logged-in users too. Note: some themes and plugins may rely on Dashicons on the frontend.
One fewer font requestdashicons.min.css no longer loads for guests.
Active
Quick answer

What does Disable Dashicons do?

When the disable_dashicons module is active, TOWP_Disable_Dashicons hooks into wp_enqueue_scripts at priority 100, late enough to run after a theme or plugin has already enqueued its own assets, and both dequeues and deregisters the dashicons stylesheet. By default this only happens for logged-out visitors; an "Also for logged-in users" option extends the same removal to authenticated visitors on the front end too. The admin area is explicitly excluded, so Dashicons keep loading wherever WordPress itself actually uses them.

The "loaded for nobody" problem

Dashicons ships to every visitor, whether they need it or not

An icon font built for the admin ends up downloaded by people who never see the admin at all.

It's an admin icon font, loaded on public pages

WordPress enqueues Dashicons for the admin bar and the admin interface, and by default that same stylesheet keeps loading on the front end too, for people who never see either.

That's a request and a file for nothing, most of the time

A guest visitor downloads the Dashicons font file on every page load without ever rendering a single icon from it, unless a theme or plugin specifically draws front-end icons with it.

A dedicated WordPress solution

Stop loading it where it isn't used

The module removes the Dashicons stylesheet from the front end while leaving it fully intact in the admin.

One less font file for guests

By default, logged-out visitors stop receiving the Dashicons stylesheet entirely, since they never see the admin bar it was built for.

Optional removal for logged-in visitors too

A separate toggle extends the same removal to authenticated users browsing the front end, for sites where that request is unnecessary there as well.

The admin is never touched

The module only runs on front-end requests, so Dashicons keep loading normally in wp-admin, where the icon font is genuinely used.

Verified feature set

A small, precisely scoped removal

Every capability below is present in the supplied PHP class and its settings registration.

Optional extension

Also for logged-in users

A dedicated checkbox extends the removal to authenticated visitors on the front end, for sites where they don't need it either.

disable_dashicons_logged_inOptional
Complete removal

Dequeued and deregistered

The stylesheet is both dequeued and deregistered, so nothing later in the page load can accidentally re-enqueue it.

wp_dequeue_stylewp_deregister_style
Timing

Runs after everything else has enqueued

The removal happens at priority 100 on wp_enqueue_scripts, late enough that a theme or plugin's own Dashicons enqueue has already happened and can be undone.

Priority 100Runs last
Admin excluded

wp-admin is never affected

An explicit is_admin() check keeps the module from ever touching the admin area, where Dashicons power the admin bar and interface icons.

is_admin() checkAdmin untouched
Clear warning

A caveat about theme and plugin icons

The settings screen explicitly warns that some themes and plugins draw front-end icons with Dashicons, and that this option would remove those too.

Explicit warningTheme-dependent
Practical use cases

Where removing the font helps most

The module supports any site loading an icon font its visitors never actually see rendered.

Trimming unnecessary front-end requests

Remove a font file most visitors never needed in the first place, on a theme that doesn't rely on Dashicons for its own icons.

Sites confirmed not to use Dashicons on the front end

After confirming no visible icon depends on the font, extend the removal to logged-in visitors too for the full saving.

General front-end performance cleanup

Pair this with other asset-trimming settings as part of a broader effort to reduce what a typical visitor downloads.

Operational benefits

A smaller front end, a warning before it matters

The module combines a sensible default, an explicit opt-in for the riskier option, and a clear caveat.

One fewer request for most visitorsLogged-out guests, the largest share of traffic on most sites, stop downloading a stylesheet they never needed.
A choice, not an all-or-nothing switchThe default only affects guests, with logged-in removal available separately for sites that have confirmed it's safe.
The admin experience stays identicalSince the module only touches the front end, nothing about how wp-admin looks or behaves changes.
A visible warning before anything breaksThe settings screen states plainly that some themes and plugins rely on Dashicons for front-end icons, so the risk is clear before enabling the broader option.
Performance behaviour

One less request, applied late and deliberately

The verified implementation removes a request cleanly, without adding measurable overhead of its own.

One less stylesheet request

Removing Dashicons on the front end means one fewer HTTP request and file download for every affected page view.

A late, deliberate removal

Running at priority 100 ensures the removal happens after other enqueue logic, so it reliably overrides rather than racing against it.

No effect in the admin

Because the check exits immediately for admin requests, there's no added overhead anywhere Dashicons are actually needed.

Security implementation

A narrow, read-only operation

The code touches exactly one asset handle and accepts no user input at all.

01

A read-only asset operation

The module only dequeues and deregisters an existing stylesheet handle; it doesn't accept or process any user input.

02

Administrator-only configuration

Only an administrator with access to TheOneWP settings can enable the module or its logged-in extension.

03

Explicitly scoped to the front end

The is_admin() check is a deliberate safeguard against the module ever affecting the admin area, even though the hook it uses is front-end only by nature.

04

No effect on any other stylesheet or script

The module targets only the dashicons handle; nothing else enqueued by WordPress, a theme, or a plugin is affected.

Verified compatibility

Built around native WordPress asset APIs

The supplied code integrates through APIs present in WordPress core. No compatibility claim beyond the verified implementation is assumed.

Asset removal

wp_dequeue_style and wp_deregister_style

The same pair of core functions any theme or plugin would use to remove its own assets, applied here to Dashicons specifically.

wp_dequeue_stylewp_deregister_style
Timing

wp_enqueue_scripts, priority 100

Runs late in the front-end asset pipeline, after typical theme and plugin enqueue calls have already executed.

wp_enqueue_scriptsPriority 100
Scope check

is_admin()

The standard WordPress function for detecting an admin request, used here to keep the removal strictly front-end.

is_admin()Front-end only
Solution comparison

TheOneWP versus common alternatives

Compare the verified Disable Dashicons implementation with a typical hand-written functions.php snippet.

CapabilityTheOneWP Disable DashiconsOther common solutions
Removing the front-end stylesheet Dequeued and deregistered automaticallyUsually requires a manual functions.php snippet
Guest vs logged-in control A separate, explicit toggle for eachOften all-or-nothing if available at all
Admin safety Admin area explicitly excludedA poorly-scoped snippet can accidentally break the admin bar
Risk communication A clear warning about theme/plugin dependenceUsually left for the site owner to discover the hard way
Administration One toggle plus one checkbox in TheOneWP settingsRequires editing theme files directly
Recommended workflow

Remove the stylesheet safely in four steps

Verify the front end before extending removal beyond the default guest-only scope.

01

Enable Disable Dashicons

Activate the module from the TheOneWP settings; guests stop receiving the stylesheet immediately.

02

Check the front end for missing icons

Browse the public site as a guest to confirm no icon that should be visible has disappeared.

03

Decide on logged-in visitors

If the front end looks correct, consider enabling "Also for logged-in users" for the full saving.

04

Recheck after a theme or plugin update

Confirm the front end still looks right if the active theme or a plugin changes, since either could start relying on Dashicons later.

Best practices

Confirm first, then expand the scope

The default guest-only behaviour is low-risk; the broader option deserves a genuine check first.

01

Check the front end before enabling the logged-in option

Confirm no visible icon depends on Dashicons before extending the removal beyond guests.

02

Read the built-in warning seriously

The note about themes and plugins relying on Dashicons exists because it's a real, common dependency worth checking for.

03

Test after any theme change

A new theme can introduce a Dashicons dependency the previous one didn't have, so it's worth rechecking the front end.

04

Leave the admin concern alone

There's nothing to configure for the admin area, since the module never touches it; focus entirely on front-end verification.

Common mistakes

Avoid assumptions that hide a real icon

The module's caveat about theme dependence is easy to skip past without reading closely.

Enabling logged-in removal without checking first

Turning on the broader option before confirming the front end doesn't use Dashicons can make theme or plugin icons disappear for logged-in visitors.

Expecting it to affect the admin

The module deliberately never touches wp-admin, so any Dashicons issue seen there isn't related to this setting.

Assuming an icon disappearing is unrelated

If a front-end icon vanishes after enabling this module, Dashicons dependency is the first thing worth checking.

Frequently asked questions

Disable Dashicons FAQ

These answers come directly from the verified class and its settings registration.

What does Disable Dashicons do?

It stops WordPress from loading the Dashicons stylesheet on the front end, first for logged-out visitors by default, and optionally for logged-in visitors too.

Why does WordPress load Dashicons on the front end at all?

It's enqueued for the admin bar and admin interface; by default, that same stylesheet keeps loading on public pages even for visitors who never see either.

Does this affect the WordPress admin area?

No. The module only runs on front-end requests and explicitly checks for and excludes the admin area.

Will this break any icons on my site?

Only if your theme or a plugin uses Dashicons to draw front-end icons; the settings screen warns about this explicitly before you enable the broader option.

Is Dashicons removed for logged-in users by default?

No. By default only logged-out visitors stop receiving it; removing it for logged-in users requires enabling a separate checkbox.

How is the stylesheet actually removed?

Through wp_dequeue_style() and wp_deregister_style(), the same pair of functions WordPress itself expects for removing an enqueued asset.

When during the page load does the removal happen?

On wp_enqueue_scripts at priority 100, late enough that a theme or plugin's own Dashicons enqueue has already run and can be undone.

How do I check if my theme depends on Dashicons?

Browse the front end as both a guest and a logged-in user after enabling the module, and look for any icon that no longer appears.

Does this improve page load performance?

It removes one stylesheet request and file download per affected page view, which is a small but genuine reduction for high-traffic guest pages.

Who can turn this module on?

Only an administrator with access to the TheOneWP settings screen.

Stop loading an admin icon font on public pages.Keep it where it's actually used.

Use Disable Dashicons to remove the stylesheet from the front end, for guests by default or for every visitor if your theme allows it.