One of the things a lot of people do with WordPress is to just accept whatever shows up in front of them in the admin panel. And, let’s be honest… WordPress admin can get pretty cluttery if you don’t exercise some control over it. 🤪
It goes beyond just keeping the clutter out of the way, though. You can actually customize WordPress admin to suit your needs. You can even make WordPress do things that are specific to you and your business that it doesn’t do “out of the box”.
WordPress is highly customizable. You don’t have to just accept things the way they are.
I’m going to go through a number of the customizations I have done to customize WordPress to my own needs and make my day-to-day operations easier. Some of these tweaks can be done with “out of the box” plugins. Others are fully custom coded specific to my business and would not apply to anybody else.
My goal is just to give you ideas. If you would like my help implementing anything similar on your site, drop some credits on your account and I’ll be happy to help.
Let’s get started…
First, Here’s How I Think About This…
I am a big advocate of what I call digital sovereignty. For that reason, I tend to be a fan of doing as much “in house” on top of WordPress as we can. Sovereignty isn’t the only reason for this, however.
Having everything in one spot and in the same database means that we can often create “hacks” and solutions that query and present data from our database in ways which are convenient.
Secondly, I look at business operations as a collection of systems. Systems are a series of steps done in sequence in order to accomplish a predictable outcome. Whenever it moves slowly or there are hitches in the system, those are constraints. As an executive, I am often in the mode of hunting for constraints and trying to figure out ways to alleviate them.
When it comes to day-to-day operations in WordPress, there are constraints that can hinder things. Things like:
- Not having easy access to data that you want.
- Taking too many clicks to get to things, therefore wasting time.
- Not having functionality that you could really use to streamline operations.
- Having WordPress components clutter things up and get in the way.
These are all things that I look at when I look at my own WordPress site. And I like to alleviate those constraints as much as I can.
In the end, WordPress is a big pile of PHP code on top of a database. It is almost all open source. WordPress is highly documented. AI tools like ChatGPT, Grok, Claude and others all can be incredibly helpful in modifying WordPress because of how open all the code is.
Plus, WordPress has hooks and filters built throughout the code specifically to help you create custom functionality and make it work with WordPress without having to modify WordPress itself.
So, with all that in mind, here are some of the things I’ve created and built to run on my own WordPress site.
Decluttering the WordPress Dashboard for Better Productivity
The WordPress admin dashboard is typically one of the most overlooked pieces of real estate in the WordPress admin panel. Plugins just pile crap on there and people go blind to it and it isn’t even useful.
Almost everything on my own Dashboard is custom to my business. But, the first step is to remove all the bullcrap that just isn’t useful. I do this in two ways:
- You can disable dashboard widgets using “Screen Options” in the top right.
- I use Admin and Site Enhancements to outright disable the code of widgets I’ll never use so that they don’t even appear in Screen Options anymore.
With Admin and Site Enhancements (I’ll just call it ASE from now on) installed, go to Tools > Enhancements > Admin Interface. I then hit the toggle to “Disable Dashboard Widgets”. Once I save and reload the screen, I get a list of all the registered widgets.

You can see that I’ve disabled a ton of stuff. Every single widget put there by default (like the stupid “Quick Draft” nobody ever uses) is gone. The news widgets from plugins are gone. If it isn’t useful for me to see it every time I log into my site, I hose it.
Then, with a much cleaner dashboard, I now work to populate it with things that are actually useful to me.
Creating Custom Admin Dashboard Widgets
Here’s a look at my own admin dashboard…


Outside of a handful of pre-built widgets from plugins that you can’t see in that screenshot, everything there is fully custom. The pre-built ones you can’t see are:
- WP Armour Statistics – since I like to see what kind of bot activity is hitting my site each day.
- Conversions – From Conversion Bridge so I can see conversion stats on the site.
- Fluent Forms – so I can see submissions across all forms on the site. Frankly, I could probably remove this one since I don’t look at it often.
- Object Cache Pro – Yeah, I guess I don’t need to see this one, so I’ll probably remove it from the dashboard. 😉
But, that then leaves the custom ones that I look at pretty often because they assist in day-to-day operations. These are:
- Upcoming Appointments. When people book with FluentBooking, I created a dashboard widget to show me my upcoming appointments so I can see it all in one place without extra clicks. Appointments also go onto my calendar automatically, but having it in one spot means I’m less likely to miss an appointment.
- Revenue Overview. A custom-coded widget that queries sales data out of WooCommerce. The built-in widget with Woo is rather useless, so I disabled it completely. Mine gives me the most important info I want, which is subscription MRR (monthly recurring revenue), total revenue this month, and total revenue last month.
- WooCommerce Revenue. This one is a 30-day graph so I can see daily income bounce around.
- FluentCRM Subscribes & Unsubscribes. Another 30-day graph which shows number of new subscribers as well as unsubscribes day-to-day from FluentCRM.
- Weekly Credit Usage. A graph of Anytime Credit debits, grouped by week. Allows me to get a measure of credit usage and track it as a stat.
- Concierge Clients. This is a big one that allows me to quickly see a list of all of my Concierge Clients and quickly link to the various things I need for them, such as CRM profile, user profile, debit log, their website profiles, etc.
All of this is custom-coded. I do this by combining my own tech experience with the use of AI tools to help me code these things.
The Concierge list is part of a custom plugin I built (more on that in a bit). The other widgets are all self-contained code that I include by using the FluentSnippets plugin (my preferred code snippet plugin).
From a mindset perspective, I’ll just point out two things here:
- I don’t just accept what plugins support and don’t support. For instance, FluentBooking doesn’t have a dashboard widget like this. I have no idea why, but they don’t. So, I just made one. 😇 In the end, all this data is in the database, so one way or the other it can be retrieved.
- Instead of having to create some complex setup to send this data off to some third-party dashboard application, or track it in a spreadsheet, I figure I can track it right at the source. The activity happens on this website, so I can track it on this website with the proper code.
I look at the Admin dashboard as prime real estate. And it makes no sense to NOT customize it to your specific needs. I use my dashboard every single day and it saves me a ton of time.
Modifying FluentCRM Contact Profiles
I make no secret of the fact that I use FluentCRM as my email database. And through the use of WP Fusion, it makes FluentCRM the hub of all customer and client profiles. A lot is managed right from inside of FluentCRM.


FluentCRM is also quite modifiable. I do that in two different ways:
- By using custom fields in FluentCRM, I can build client profiles to track the exact things I need beyond just the default. I also use Advanced Custom Fields to add custom fields to user profiles in WordPress and then use WP Fusion to sync things two-way.
- By modifying the FluentCRM contact screens themselves to include custom data that is not part of FluentCRM, but I want to be there anyway. I do this by using the FluentCRM Developer Docs in combination with some AI tools to help me create custom code to modify the contact screen.
Some plugins automatically add things to the FluentCRM contact profiles. This includes:
- When WooCommerce is installed, you get a “Purchase History” tab so you can see everything that person has bought.
- When Fluent Forms is installed, you get a “Form Submissions” tab so you can see any forms they’ve submitted.
- When you have FluentBooking, you get a “Bookings” tab so you can see anybody’s appointment history.
- When you use Conversion Bridge, you get a “Journeys” tab so you can see conversion events tracked to that user and the journey that took them there.
- When you use WooCommerce Subscriptions and the contact has subscriptions, you’ll see a side card in the side panel that shows their subscriptions.
This is all cool. But, I added two more using my own custom code:
- I have a “Credits” tab which will show me their debit history of all Anytime Credits as well as a quick link to view that history in full on a new screen.
- I have a “Concierge Sites” side panel that will show me links to websites in my system attached to that client. Some clients bring multiple sites into Concierge, so I can see all of them right on their profile.
All of this comes together to make the CRM profile a central hub for anything associated with that contact. It is their file. And it is all accessible from one place.
Creating Custom Plugins To Fulfill Specific Business Needs
For this one, we’re definitely diving deeper and this one will be harder to execute. Sometimes you would like to do something for your business that is so specific that you just can’t find a pre-built plugin that will do it for you. Sometimes still, you may find a plugin that will do it, but the WAY it does it isn’t ideal or comes with a bunch of clutter you don’t need.
Well, with modern AI tools, even people with moderate tech skills can “vibe code” their own WordPress plugins. And that’s what I’ve done to fill two VERY specific needs in my own business. Namely…
- The Anytime Credit Manager. This is a custom-built plugin that allows me to manage credits, track debits and credits on a log, show that log to both myself and my clients on the front-end, and more.
- Concierge Client Manager. This is another custom-built plugin that will conveniently show all of my Concierge clients on one screen as well as to create website profiles for the sites that I manage on their behalf as part of Concierge.
These things have developed over time.
When I first started doing a credit system for my clients, it started as just a series of custom fields with Advanced Custom Fields. The credit log was literally just a repeater field. The problem is that there’s not much you can do with the data in that format. I wanted to be able to globally see all debits across all clients in one place, track statistics, etc. The solution was to begin using a custom database table and build it myself. So, the plugin was born and I can build and tweak it to my needs.
The interesting thing about this is that I have nobody to satisfy here other than myself. 😇 These are not plugins I’m creating to distribute to anybody else, so I can do whatever I please and I only need to worry about it working on one website – mine. My Anytime Credits plugin works tightly with FluentCRM which is totally fine for ME. I don’t have to worry about making it work with other CRMs because I only need to suit myself.
My Concierge manager is similar. It works very closely with FluentCRM and uses functions of WP Fusion and ACF to work. I don’t have to worry about whether others are using those plugins. I am and that’s all that matters. I was able to build the system to my specific needs.
Client profiles come right out of FluentCRM and my client list is just querying for people with certain tags on their profile. I can color code clients based on the type of client they are as well as their subscription status. The addition of site profiles is a more recent one because I found myself copying data to Notion (an outside system) and it was a constraint. Building client site profiles locally just made sense because it will all be right here where the data is to begin with. It is just a custom post type and I can use the powers of ACF to track the data I wish to track. I never store passwords or other secure information in WordPress for obvious reasons and instead have an encrypted system off-site for that.
This is all very technical, so I don’t expect anybody to just run out and do this. Plus, these plugins are specific to Blog Marketing Academy and wouldn’t be all that useful to others anyway. 😜 But…
If you have a specific need in your business that you can’t find in the plugins on the market, don’t dismiss the idea that you can literally build it.
You can custom tailor things just the way YOU need it. And with today’s AI tools, this kind of thing is more accessible than it has ever been.
Customizing the WordPress Admin Menu for Faster Navigation
The side panel admin menu is just something you get used to over time. There’s not a lot of logic to it, but it just kind of developed that way and things are slow to change.
However, I use Admin & Site Enhancements (ACE) to modify it. Another one of it’s utilities is the “Admin Menu Organizer. By enabling that, it gives me a drag-and-drop interface for me to do things like:
- Change the order in which things display in the side admin menu.
- Add dividers to separate sections of the menu and group things together.
- Hide options I never use, either completely or behind a toggle.
- Rename menu options to things which are more useful


You can see in my case how I have changed some things around to suit my own needs. I’ve also added separators in there to give me groupings to make things quicker to find.
By default, those separators will simply give you a little space without a visible line. So, I fixed that by adding a little bit of custom CSS to the admin panel. Using FluentSnippets, I set up a CSS snippet and made it show only on the backend (since it would be irrelevant on the frontend). That CSS is:
#adminmenu li.wp-menu-separator {
height: 2px;
margin: 10px 0;
background-color: #1b7efb;
border: none;
}
Modifying the admin menu with ASE does have some limitations. Things you may notice are:
- To due to the hook firing order, sometimes you may disable a menu option and it continues to appear anyway.
- There are limits to have much you can change menu locations, especially on sub-menu items. For instance, you cannot drag a menu item to be a sub-menu of another when it wasn’t programmed to be that way.
Hiding Admin Notices
The admin notices that various plugins litter all over the place puts a real damper on day-to-day usage of the WordPress Admin Panel. The nag notices can get simply ridiculous. So, I hide them.
Once again using ASE, I simply hit the toggle to “Hide Admin Notices”.


This will hide all that garbage under a “Notices” dropdown which appears in the top left. Then, I can look at them when I feel like it.
Take Control Of The Block Editor
The content editing experience in WordPress can get really cluttered as well. When it does, it makes the screen loading time for the editor take longer, therefore wasting time. Annoying things can be:
- Way too many blocks showing up in the editor…. most of which you never use.
- Too many side panels and other boxes showing up around the editor. And the more plugins you have, the more boxes you may get.
You can take control over it, however. Many people don’t realize that the block editor has a “Preferences” panel.


In the Preferences area, you can:
- Disable interface components you never use. For instance, I love PerfMatters but it puts a checkbox for “Lazy Loading” on the side panel of every post when I edit. I literally never use it. So, I simply disabled it so it never takes up screen space.
- Disable blocks you never use. In the Blocks section of the Preferences panel, you can flip the toggle to disable blocks you never use. Get them out of the way and streamline your editing experience.
There are a lot of other options in there, too. If you didn’t know about Preferences, go take a look and customize to meet your needs.
Keep in mind, too, that plugins that add blocks and other components often have their own ways of disabling them as well. For instance, Spectra has it’s own panel for disabling blocks you never use. When you have such options, use them rather than just accepting whatever these plugins toss in there by default.
Managing Your Admin Columns
The listing screens in the Admin Panel can get pretty packed. The post list, the page list, other post types, the product list for WooCommerce… all these things get packed with columns. Often, when you install a new plugin, it may just add new columns by default. For instance, SEO plugins are well known for adding various SEO-related columns to your list of posts.
With all these columns, it can make these screens difficult to use. It clutters the interface and makes it look really strange in some cases.
Once again, the “Screen Options” dropdown (top right) usually allows you to disable columns you don’t want anymore. However, you can really fine-tune these things by using Admin Columns.
The Admin Columns plugin allows you to completely take control over all of your list screens across the entire WordPress admin panel. You can show/hide columns. You can add your own custom columns. You can do quick in-line edits. The plugin is amazing, really.
I use Admin Columns Pro quite a bit to customize my admin screens to show only what I need/want to see…. in the way I want to see it.
Always Remember…
If you go deeper into my WordPress install, there are other little hacks I’ve done to customize the admin panel to my own needs. What I’ve covered here are some of the larger ones.
The point of this post wasn’t to necessarily show you HOW to do everything I’ve done, but to show you some of the things you CAN do to give you some ideas. Some of the things here are pretty easy to do with “out of the box” plugins. Others required custom coding.
The main thing to remember here is you’re not “stuck” with the way the WordPress admin panel looks. You don’t have to just accept all the clutter of the plugins you’re using. Nor should you! It is YOUR website and you get to manage it in an environment suited to you.
Remember, we’re using WordPress as a tool to run our businesses. It is there to serve our needs, not the other way around. And since the goal is business, we need to be able to conduct daily operations in the WordPress admin panel with as little friction as possible.
So, sit down and look at your own daily activity in WordPress. Look at your business and it’s needs. And ask yourself:
- What are the areas of friction that waste time every day, or take too many clicks to find it?
- What information would be handy to have on your dashboard, rather than the crap that usually clutters it up?
- What administrative functionality would improve operations if it were baked right into your WordPress admin panel?
With those ideas, then you can research ways to do it.
Not everything is appropriate to do inside of WordPress. But, many day-to-day things make tons of sense to do right inside WordPress. Especially if that’s where the activity is happening to begin with.