Falcon_Manager::register_default_settings PHP Метод

register_default_settings() публичный статический Метод

public static register_default_settings ( )
    public static function register_default_settings()
    {
        if (Falcon::is_network_mode()) {
            self::register_network_settings();
        }
        add_settings_section('bbsub_options_notifications', 'Default Notification Settings', array(get_class(), 'output_default_settings_header'), 'bbsub_options');
        $connectors = Falcon::get_connectors();
        foreach ($connectors as $type => $connector) {
            if (!is_callable(array($connector, 'get_available_settings'))) {
                continue;
            }
            $args = array('type' => $type, 'connector' => $connector);
            add_settings_field('falcon_options_notifications-' . $type, $connector->get_name(), array(get_class(), 'output_default_settings'), 'bbsub_options', 'bbsub_options_notifications', $args);
            $available = $connector->get_available_settings();
            self::$available[$type] = $available;
            foreach ($available as $key => $title) {
                $setting_key = self::key_for_setting($type, 'notifications.' . $key);
                register_setting('bbsub_options', $setting_key);
                // Add the filter ourselves, so that we can specify two params
                add_filter("sanitize_option_{$setting_key}", array(get_class(), 'sanitize_notification_option'), 10, 2);
                // Save the key for later
                self::$registered_settings[$setting_key] = array($type, $key);
            }
        }
    }

Usage Example

Пример #1
0
 /**
  * Initialization
  *
  * @wp-action admin_init
  */
 public static function init()
 {
     if (!is_admin()) {
         return false;
     }
     register_setting('bbsub_options', 'bbsub_handler_type', array(__CLASS__, 'validate_type'));
     register_setting('bbsub_options', 'bbsub_replyto', array(__CLASS__, 'validate_replyto'));
     register_setting('bbsub_options', 'bbsub_from_email', array(__CLASS__, 'validate_from_email'));
     register_setting('bbsub_options', 'bbsub_send_to_author', array(__CLASS__, 'validate_send_to_author'));
     register_setting('bbsub_options', 'bbsub_send_async', array(__CLASS__, 'validate_send_async'));
     register_setting('bbsub_options', 'bbsub_handler_options', array(__CLASS__, 'validate_handler_options'));
     // Global Settings
     add_settings_section('bbsub_options_global', 'Main Settings', array(__CLASS__, 'settings_section_main'), 'bbsub_options');
     add_settings_field('bbsub_options_global_type', 'Messaging Handler', array(__CLASS__, 'settings_field_type'), 'bbsub_options', 'bbsub_options_global');
     add_settings_field('bbsub_options_global_replyto', 'Reply-To Address', array(__CLASS__, 'settings_field_replyto'), 'bbsub_options', 'bbsub_options_global');
     add_settings_field('bbsub_options_global_from_email', 'From Address', array(__CLASS__, 'settings_field_from'), 'bbsub_options', 'bbsub_options_global');
     add_settings_field('bbsub_options_global_send_to_author', 'Send To', array(__CLASS__, 'settings_field_send_to_author'), 'bbsub_options', 'bbsub_options_global');
     add_settings_field('bbsub_options_global_send_async', 'Send Asynchronously', array(__CLASS__, 'settings_field_send_async'), 'bbsub_options', 'bbsub_options_global');
     // Note: title is false so that we can handle it ourselves
     add_settings_section('bbsub_options_handleroptions', false, array(__CLASS__, 'settings_section_handler'), 'bbsub_options');
     foreach (Falcon::get_connectors() as $connector) {
         if (!is_callable($connector, 'register_settings')) {
             continue;
         }
         $connector->register_settings();
     }
     Falcon_Manager::register_default_settings();
 }