Customizing WordPress Admin – updated for 3.1 with new tips!
Back in June of 2010 I debuted a talk at WordCamp Chicago which I updated and shared in September at WordCamp Mid-Atlantic. Aimed at developers, Customizing WordPress Administration offered killer tips for consultants looking to tailor the other end of WordPress for their clients.
At the heart of the talk was a simple Twenty-Ten child theme, with the focal point being a functions.php file loaded to the gills with hooks and functions that customize the branding and administrative experience (available for download here).
I’ve updated the child theme to 1.5; in addition to incorporating some suggestions, I’ve updated some small bits (like removing menu items) to take advantage of new WordPress 3.1 API calls and some other best practices (it now requires WordPress 3.1).
The tips include:
- Adding an admin stylesheet so you can restyle the back end – including the logo!
- Renaming admin items by hooking translation functions (“Posts” became “Articles”)
- Adding an “Admin Lite” role that can manage users, widgets, menus, and plug-ins, but can’t change the theme or settings
- Removing unwanted post meta boxes, widgets, menu items, editor buttons, and more
- Adding additional contextual help – globally and on a screen by screen basis!
- Styling the editor – globally, or unique to each post type!
- Add an ID column to the list of posts
- Add a dashboard widget with your own company’s RSS feed
The functions.php script is commented in detail, so even if you don’t really understand how the code works, you can work some copy and paste magic. This child theme is still completely GPL – I still hope to see these ideas propagate in the community and strengthen WordPress’ reputation as one of the easiest, friendliest content management systems. I do ask that if you use some or all of the code in a theme, that you provide a friendly attribution in the source code to this post and yours truly.
Keep in mind, although this is built as a child theme to Twenty-Ten, the default theme as of WordPress 3.0, it should work with just about any theme. Just edit the style.css and change the parent theme.
Comments
Episode Six on
[…] 2.1 Best Practice For Adding Custom Functions10 Techniques for Customizing the WordPress Admin PanelCustomizing WordPress Admin – updated for 3.1 with new tips!Custom Meta Boxes6 .htaccess Tricks for Better WordPress SEO & SecurityWhat to do when […]
New WordPress Power Tips For Template Developers And Consultants – Smashing Magazine on
[…] } Further readingHere are more tips for developers who build websites for clients:Customizing WordPress Administration with Twenty-Ten Child Theme10 Techniques for Customizing the WordPress Admin PanelMore WordPress power tips from Smashing […]
Steve on
LOVE THIS IDEA! Props for the work you’ve put into this so far! :)
I noticed (at least in my latest install of WP) that when clicking on the “Articles” section of the admin, the page title (next to the icon) still read, “Posts”.
I’ve tracked down the display element for this, and added one line under line 176 of the functions.php:
add_filter( ‘esc_html’, ‘change_post_to_article’ );
This took care of the name. Thanks again for the hard work!
Aaron on
what a great, clean way to customize the admin panel! nice work!
Smitty on
Does this change at all for WP 3.2?
Jake Goldman on
Unfortunately, yes, in some small ways, but I haven’t had a chance to update again. The code won’t break anything, but not everything works anymore.
Customize Your WordPress Admin Area on
[…] Jake commented below that the blog post has moved and been updated with new code. If you are still interested in learning about this process, you can visit Jake’s new blog post. […]
Stacy on
This is great! Thank you for sharing. I have a question, is there a way to change the url on the login page logo (currently goes to WordPress.org)?
Jake Goldman on
Yes. I’ll be putting up a blog post about this.
Arjun on
How to change dashboard submenus labels?
Jake Goldman on
You have to grab the global “menu” variable and manually manipulate it.
Navigationspunkte im WordPress-Backend ausblenden und umbenennen | kulturbanause blog on
[…] Customizing WordPress Admin – updated for 3.1 with new tips! […]
WordCamp Orange County: Enterprise Class WordPress | 10up on
[…] taken the “fine-tuning administration” series as far as I can go (Hijacking WordPress Admin, Editing the Visual Editor, and What Would Core Do?), I’m turning my attention to another […]
Cosmin on
$translated = str_ireplace( ‘Post’, ‘News’, $translated );
Unfortunately, this will output “Newss”, WP doesn’t get words :D And if you use “New”, it will show “Add New New” :)
Karl on
Is there a way to rename the label for ‘Tags’ under Posts to something like ‘Centers’?
Jake Goldman on
Yep, same technique.