Hide Permalink Settings From Site Admins
Removes Settings > Permalinks from subsite dashboards for non-super-admins so URL structures stay consistent across the network.
Opens WPIDE on
Code
if ( ! is_multisite() ) {
return;
}
add_action( 'admin_menu', function () {
if ( ! is_super_admin() ) {
remove_submenu_page( 'options-general.php', 'options-permalink.php' );
}
}, 999 );
add_action( 'load-options-permalink.php', function () {
if ( ! is_super_admin() ) {
wp_die( esc_html__( 'Permalink settings are managed by the network administrator.' ), 403 );
}
} );
Notes
Combine with the new-site defaults snippet to set the structure for every new site.
How to add this snippet
- Install WPIDE on your WordPress site (it is free) and open Code Snippets.
- Use snippet above adds it from the library in one click. Or copy the code into a new snippet with the same code type.
- It is added inactive: review the code and settings, then switch it on.