Free Plugins to Enhance your WordPress Experience!

wordpress-plugin

The WordPress UI is one of the best CMS’s on the market and continues to improve with every version. That being said there are a few features that seem to be missing which could make your experience a whole lot better and I am going to show you a few plugins to fill that void!

Media File Sizes

file-media-size

The Media Library leaves a lot to be desired, with Media File Sizes we can add a new column showing the file size of your media. Allowing you to sort by size and identify any media that might be taking up a bit to much space on your site and possibly causing slow load times.

Check out Media File Size

Enable Media Replace

enable-media-replace-wordpress

Sometimes you upload an image and realize it needs to be replaced, maybe you’ve already posted it in a few places on your site. By default, WordPress doesn’t give you a way to swap it out with Enable Media Replace you can replace your media sitewide! (Note: I have experienced some weirdness when used in conjunction with Jetpack’s Photon)

Check out Enable Media Replace

Duplicate Post

duplicate-post-wordpress

I find Duplicate Post particularly useful when dealing with posts that have a large amount of custom fields or sites using page builders. You find yourself creating a bunch of pages with similar layouts or content and instead of having to copy and paste or dragging and dropping over and over again you just want to make a duplicate and change the content our a bit. Duplicate Post solves this!

Check out Duplicate Post

Disable Title

disable-title-wordpress

I often find I don’t want my page headline to be what the title of the page is. There are a few ways to solve this, but I’ve found the least involved process is to disable the title and add my own H1 heading in the editor and with Disable Title you can do that!

Check out Disable Title

Organize the Gear

2016-10-01-13-54-36-2
I’ve been wanting to shoot more, but tracking down all my gear has become a major obstacle.

My gear has been stored in several camera bags for years now, only being pulled out when needed. But this way of organizing has really impeded many impromptu shoots. Using some cheap spice racks, found at IKEA and painted white, I was able to relocate the bulk of my shooting equipment to a wall in my office, no longer out of sight and ready to go at any moment!

I would love to see how you organize your camera gear!

Animated Hamburger Icon

I was getting sick of trying to find an animated menu icon that was easily scalable. So I made this single element, em based, animated, hamburger menu icon to be easily used across my web projects. Change the font size to see it grow and shrink uniformly. I hope you can find some use for it as well!

http://codepen.io/philhoyt/pen/pbxzav

Adding a ‘Client’ User Role to WordPress

In an effort to make a better boilerplate my co-worker Jim Floss and I set out to create a new User Role inside our WordPress client sites. This role closely resembles the Editor role and Admin role, but allows us to turn different functionality on a per-client basis if need be, but by default locks them out of many things such as updates and plugins. I didn’t see much information on cloning a role and removing functionality online so I figured I would put it up here! Enjoy.

/**
* Adds a 'Client' user role
* https://codex.wordpress.org/Roles_and_Capabilities
*/

add_action(‘init’, ‘add_client_role’);

function add_client_role() {
global $wp_roles;
if ( ! isset( $wp_roles ) )
$wp_roles = new WP_Roles();

$adm = $wp_roles->get_role(‘administrator’);
//Adding a ‘new_role’ with all admin caps
$wp_roles->add_role(‘client’, ‘Client’, $adm->capabilities);
}

add_action(‘init’, ‘revoke_client_capabilities’, 10);

function revoke_client_capabilities() {
$caps_to_remove = array(
‘update_core’,
‘activate_plugins’,
‘install_plugins’,
‘update_plugin’,
‘edit_plugins’,
‘edit_themes’,
‘export’,
‘import’,
‘create_users’,
‘manage_options’,
‘switch_themes’ // etc
);
$custom_role = get_role(‘client’); // Edit according to your role as it was declared when added
foreach($caps_to_remove as $cap) {
$custom_role->remove_cap($cap);
}
}