The can_edit_network WordPress PHP filter allows you to modify whether a network can be edited from the current page.
Usage
add_filter('can_edit_network', 'my_custom_edit_network', 10, 2); function my_custom_edit_network($result, $network_id) { // Your custom code here return $result; }
Parameters
$result
(bool) – Whether the network can be edited from this page.$network_id
(int) – The network ID to check.
More information
See WordPress Developer Resources: can_edit_network
Examples
Restrict network editing to a specific network ID
Prevent network editing except for a specific network ID (e.g., 3).
add_filter('can_edit_network', 'restrict_network_editing', 10, 2); function restrict_network_editing($result, $network_id) { if ($network_id == 3) { return true; } return false; }
Allow network editing only for a specific user role
Allow network editing only for users with the ‘administrator’ role.
add_filter('can_edit_network', 'allow_network_editing_for_admins', 10, 2); function allow_network_editing_for_admins($result, $network_id) { if (current_user_can('administrator')) { return true; } return false; }
Disable network editing for all users
Disable network editing for all users regardless of their roles.
add_filter('can_edit_network', 'disable_network_editing', 10, 2); function disable_network_editing($result, $network_id) { return false; }
Enable network editing based on custom user meta
Enable network editing for users who have a specific custom user meta value (e.g., ‘can_edit_networks’ set to ‘yes’).
add_filter('can_edit_network', 'enable_network_editing_based_on_meta', 10, 2); function enable_network_editing_based_on_meta($result, $network_id) { $user_id = get_current_user_id(); $can_edit = get_user_meta($user_id, 'can_edit_networks', true); if ($can_edit === 'yes') { return true; } return false; }
Enable network editing only on a specific page
Enable network editing only when users are on a specific page (e.g., a page with ID 42).
add_filter('can_edit_network', 'enable_network_editing_on_specific_page', 10, 2); function enable_network_editing_on_specific_page($result, $network_id) { if (is_page(42)) { return true; } return false; }