public static function init() {
		$class = get_called_class();

		// Admin menu entry for upload debugging.
		add_action('admin_menu', array($class, 'menu_debug'));

		// Override upload file validation (general).
		add_filter('wp_check_filetype_and_ext', array($class, 'check_filetype_and_ext'), 10, 4);

		// Override upload file validation (SVG).
		add_filter('wp_check_filetype_and_ext', array($class, 'check_filetype_and_ext_svg'), 15, 4);

		// Set up translations.
		add_action('plugins_loaded', array($class, 'localize'));

		// Update check on debug page.
		add_action('admin_notices', array($class, 'debug_notice'));

		// AJAX hook for disabling contributor lookups.
		add_action('wp_ajax_bm_ajax_disable_contributor_notice', array($class, 'disable_contributor_notice'));

		// And the corresponding warnings.
		add_filter('admin_notices', array($class, 'contributors_changed_notice'));

		// Pull remote contributor information.
		$next = wp_next_scheduled('cron_get_remote_contributors');
		if ('disabled' === get_option('bm_contributor_notice', false)) {
			// Make sure the CRON job is disabled.
			if ($next) {
				wp_unschedule_event($next, 'cron_get_remote_contributors');
			}
		}
		else {
			add_action('cron_get_remote_contributors', array($class, 'cron_get_remote_contributors'));
			if (!$next) {
				wp_schedule_event(time(), 'hourly', 'cron_get_remote_contributors');
			}
		}

		// Register plugins page quick links if we aren't running in
		// Must-Use mode.
		if (!BLOBMIMES_MUST_USE) {
			add_filter('plugin_action_links_' . plugin_basename(BLOBMIMES_INDEX), array($class, 'plugin_action_links'));
		}
	}
public static function init() {
		$class = get_called_class();

		// Admin menu entry for upload debugging.
		add_action('admin_menu', array($class, 'menu_debug'));

		// Override upload file validation (general).
		add_filter('wp_check_filetype_and_ext', array($class, 'check_filetype_and_ext'), 10, 4);

		// Override upload file validation (SVG).
		add_filter('wp_check_filetype_and_ext', array($class, 'check_filetype_and_ext_svg'), 15, 4);

		// Set up translations.
		add_action('plugins_loaded', array($class, 'localize'));

		// Update check on debug page.
		add_action('admin_notices', array($class, 'debug_notice'));

		// AJAX hook for disabling contributor lookups.
		add_action('wp_ajax_bm_ajax_disable_contributor_notice', array($class, 'disable_contributor_notice'));

		// And the corresponding warnings.
		add_filter('admin_notices', array($class, 'contributors_changed_notice'));

		// Pull remote contributor information.
		$next = wp_next_scheduled('cron_get_remote_contributors');
		if ('disabled' === get_option('bm_contributor_notice', false)) {
			// Make sure the CRON job is disabled.
			if ($next) {
				wp_unschedule_event($next, 'cron_get_remote_contributors');
			}
		}
		else {
			add_action('cron_get_remote_contributors', array($class, 'cron_get_remote_contributors'));
			if (!$next) {
				wp_schedule_event(time(), 'hourly', 'cron_get_remote_contributors');
			}
		}

		// Register plugins page quick links if we aren't running in
		// Must-Use mode.
		if (!BLOBMIMES_MUST_USE) {
			add_filter('plugin_action_links_' . plugin_basename(BLOBMIMES_INDEX), array($class, 'plugin_action_links'));
		}
	}
public static function init ( ) { $ class = get_called_class ( ) ; // Admin menu entry for upload debugging. add_action ( 'admin_menu' , array ( $ class , 'menu_debug' ) ) ; // Override upload file validation (general). add_filter ( 'wp_check_filetype_and_ext' , array ( $ class , 'check_filetype_and_ext' ) , 10 , 4 ) ; // Override upload file validation (SVG). add_filter ( 'wp_check_filetype_and_ext' , array ( $ class , 'check_filetype_and_ext_svg' ) , 15 , 4 ) ; // Set up translations. add_action ( 'plugins_loaded' , array ( $ class , 'localize' ) ) ; // Update check on debug page. add_action ( 'admin_notices' , array ( $ class , 'debug_notice' ) ) ; // AJAX hook for disabling contributor lookups. add_action ( 'wp_ajax_bm_ajax_disable_contributor_notice' , array ( $ class , 'disable_contributor_notice' ) ) ; // And the corresponding warnings. add_filter ( 'admin_notices' , array ( $ class , 'contributors_changed_notice' ) ) ; // Pull remote contributor information. $ next = wp_next_scheduled ( 'cron_get_remote_contributors' ) ; if ( 'disabled' === get_option ( 'bm_contributor_notice' , false ) ) { // Make sure the CRON job is disabled. if ( $ next ) { wp_unschedule_event ( $ next , 'cron_get_remote_contributors' ) ; } } else { add_action ( 'cron_get_remote_contributors' , array ( $ class , 'cron_get_remote_contributors' ) ) ; if ( ! $ next ) { wp_schedule_event ( time ( ) , 'hourly' , 'cron_get_remote_contributors' ) ; } } // Register plugins page quick links if we aren't running in // Must-Use mode. if ( ! BLOBMIMES_MUST_USE ) { add_filter ( 'plugin_action_links_' . plugin_basename ( BLOBMIMES_INDEX ) , array ( $ class , 'plugin_action_links' ) ) ; } }
Register Actions and Filters

@return void Nothing.
Register Actions and Filters