__('Choose who has access to manage Perfmatters plugin settings.', 'perfmatters') ) ); add_settings_field( 'default', perfmatters_title(__('Network Default', 'perfmatters'), 'default', 'https://perfmatters.io/docs/wordpress-multisite/'), 'perfmatters_network_default_callback', 'perfmatters_network', 'perfmatters_network', array( 'tooltip' => __('Choose a subsite that you want to pull default settings from.', 'perfmatters') ) ); //Clean Uninstall add_settings_field( 'clean_uninstall', perfmatters_title(__('Clean Uninstall', 'perfmatters'), 'clean_uninstall', 'https://perfmatters.io/docs/clean-uninstall/'), 'perfmatters_print_input', 'perfmatters_network', 'perfmatters_network', array( 'id' => 'clean_uninstall', 'option' => 'perfmatters_network', 'tooltip' => __('When enabled, this will cause all Perfmatters options data to be removed from your database when the plugin is uninstalled.', 'perfmatters') ) ); //Register Setting register_setting('perfmatters_network', 'perfmatters_network'); } add_filter('network_admin_menu', 'perfmatters_network_admin_menu'); //network access callback function perfmatters_network_access_callback() { $perfmatters_network = get_site_option('perfmatters_network'); echo ""; //tooltip if(!empty($args['tooltip'])) { perfmatters_tooltip($args['tooltip']); } } //network default callback function perfmatters_network_default_callback() { $perfmatters_network = get_site_option('perfmatters_network'); echo ""; //tooltip if(!empty($args['tooltip'])) { perfmatters_tooltip($args['tooltip']); } } //update perfmatters network options function perfmatters_update_network_options() { //Verify Post Referring Page check_admin_referer('perfmatters_network-options'); //Get Registered Options global $new_whitelist_options; $options = $new_whitelist_options['perfmatters_network']; //Loop Through Registered Options foreach($options as $option) { if(isset($_POST[$option])) { //Update Site Uption update_site_option($option, $_POST[$option]); } } //Redirect to Network Settings Page wp_redirect(add_query_arg(array('page' => 'perfmatters', 'updated' => 'true'), network_admin_url('settings.php'))); exit; } add_action('network_admin_edit_perfmatters_update_network_options', 'perfmatters_update_network_options');