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.
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.
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.
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.
A small, precisely scoped removal
Every capability below is present in the supplied PHP class and its settings registration.
Removed for logged-out visitors
The Dashicons stylesheet is dequeued and deregistered for guests by default, the group that never sees the admin bar it was built for.
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.
Dequeued and deregistered
The stylesheet is both dequeued and deregistered, so nothing later in the page load can accidentally re-enqueue it.
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.
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.
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.
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.
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 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.
A narrow, read-only operation
The code touches exactly one asset handle and accepts no user input at all.
A read-only asset operation
The module only dequeues and deregisters an existing stylesheet handle; it doesn't accept or process any user input.
Administrator-only configuration
Only an administrator with access to TheOneWP settings can enable the module or its logged-in extension.
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.
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.
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.
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_enqueue_scripts, priority 100
Runs late in the front-end asset pipeline, after typical theme and plugin enqueue calls have already executed.
is_admin()
The standard WordPress function for detecting an admin request, used here to keep the removal strictly front-end.
TheOneWP versus common alternatives
Compare the verified Disable Dashicons implementation with a typical hand-written functions.php snippet.
| Capability | TheOneWP Disable Dashicons | Other common solutions |
|---|---|---|
| Removing the front-end stylesheet | Dequeued and deregistered automatically | Usually requires a manual functions.php snippet |
| Guest vs logged-in control | A separate, explicit toggle for each | Often all-or-nothing if available at all |
| Admin safety | Admin area explicitly excluded | A poorly-scoped snippet can accidentally break the admin bar |
| Risk communication | A clear warning about theme/plugin dependence | Usually left for the site owner to discover the hard way |
| Administration | One toggle plus one checkbox in TheOneWP settings | Requires editing theme files directly |
Remove the stylesheet safely in four steps
Verify the front end before extending removal beyond the default guest-only scope.
Enable Disable Dashicons
Activate the module from the TheOneWP settings; guests stop receiving the stylesheet immediately.
Check the front end for missing icons
Browse the public site as a guest to confirm no icon that should be visible has disappeared.
Decide on logged-in visitors
If the front end looks correct, consider enabling "Also for logged-in users" for the full saving.
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.
Confirm first, then expand the scope
The default guest-only behaviour is low-risk; the broader option deserves a genuine check first.
Check the front end before enabling the logged-in option
Confirm no visible icon depends on Dashicons before extending the removal beyond guests.
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.
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.
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.
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.
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.

