wpseek.com
A WordPress-centric search engine for devs and theme authors
_wp_register_default_connector_settings is private and should not be used in themes or plugins directly.
_wp_register_default_connector_settings › WordPress Function
Since7.0.0
Deprecatedn/a
› _wp_register_default_connector_settings ( No parameters )
| Access: |
|
| Defined at: |
|
| Codex: |
Registers default connector settings.
Source
function _wp_register_default_connector_settings(): void {
$registered_settings = get_registered_settings();
foreach ( wp_get_connectors() as $connector_data ) {
$auth = $connector_data['authentication'];
if ( 'api_key' !== $auth['method'] && 'application_password' !== $auth['method'] ) {
continue;
}
if ( empty( $auth['setting_name'] ) || isset( $registered_settings[ $auth['setting_name'] ] ) ) {
continue;
}
$setting_name = $auth['setting_name'];
if ( ! isset( $connector_data['plugin']['is_active'] ) || ! is_callable( $connector_data['plugin']['is_active'] ) ) {
continue;
}
if ( ! call_user_func( $connector_data['plugin']['is_active'] ) ) {
continue;
}
if ( 'api_key' === $auth['method'] ) {
register_setting(
'connectors',
$setting_name,
array(
'type' => 'string',
'label' => sprintf(
/* translators: %s: Connector name. */
__( '%s API Key' ),
$connector_data['name']
),
'description' => sprintf(
/* translators: %s: Connector name. */
__( 'API key for the %s connector.' ),
$connector_data['name']
),
'default' => '',
'show_in_rest' => true,
'sanitize_callback' => 'sanitize_text_field',
)
);
} elseif ( 'application_password' === $auth['method'] ) {
register_setting(
'connectors',
$setting_name,
array(
'type' => 'object',
'label' => sprintf(
/* translators: %s: Connector name. */
__( '%s Credentials' ),
$connector_data['name']
),
'description' => sprintf(
/* translators: %s: Connector name. */
__( 'Application password credentials for the %s connector.' ),
$connector_data['name']
),
'default' => array(
'username' => '',
'password' => '',
),
'show_in_rest' => array(
'schema' => array(
'type' => 'object',
'properties' => array(
'username' => array(
'type' => 'string',
),
'password' => array(
'type' => 'string',
),
),
'additionalProperties' => false,
),
),
'sanitize_callback' => static function ( $value ) use ( $setting_name ) {
return wp_connectors_sanitize_application_password_credentials( $value, $setting_name );
},
)
);
}
}
}