If you are developing a website based on the WordPress content management system for another company or individual, you may need to prevent them from switching themes. In this case we are going to remove the ability for them to change their WordPress theme with this snippet.
Adding this snippet to the functions.php of your WordPress theme will disable theme changing sub menu from the admin menu. This is done based on user ID so you can remove the menu just for your clients while still keeping it available for you.
add_action('admin_init', 'slt_lock_theme');
function slt_lock_theme() {
global $submenu, $userdata;
get_currentuserinfo();
if ($userdata->ID != 1) {
unset($submenu['themes.php'][5]);
unset($submenu['themes.php'][15]);
}
}
Once saved, your client will not be able to switch themes anymore.
Thanks to Steve Taylor for this cool recipe!
