public static function admin_load() { self::$admin_page = $admin_page = add_options_page('Crayon Syntax Highlighter ' . crayon__('Settings'), 'Crayon', 'manage_options', 'crayon_settings', 'CrayonSettingsWP::settings'); add_action("admin_print_scripts-{$admin_page}", 'CrayonSettingsWP::admin_scripts'); add_action("admin_print_styles-{$admin_page}", 'CrayonSettingsWP::admin_styles'); // Register settings, second argument is option name stored in db register_setting(self::FIELDS, self::OPTIONS, 'CrayonSettingsWP::settings_validate'); add_action("admin_head-{$admin_page}", 'CrayonSettingsWP::admin_init'); // Register settings for post page add_action("admin_print_styles-post-new.php", 'CrayonSettingsWP::admin_styles'); add_action("admin_print_styles-post.php", 'CrayonSettingsWP::admin_styles'); // TODO depreciated since WP 3.3, remove eventually global $wp_version; if ($wp_version >= '3.3') { add_action("load-{$admin_page}", 'CrayonSettingsWP::help_screen'); } else { add_filter('contextual_help', 'CrayonSettingsWP::cont_help', 10, 3); } }