Initializes the connector registry with default connectors and fires the registration action.
Description
Creates the registry instance, registers built-in connectors (which cannot be unhooked), and then fires the wp_connectors_init action for plugins to register their own connectors.
Source
function _wp_connectors_init(): void {
$registry = new WP_Connector_Registry();
WP_Connector_Registry::set_instance( $registry );
// Only register default AI providers if AI support is enabled.
if ( wp_supports_ai() ) {
_wp_connectors_register_default_ai_providers( $registry );
}
// Non-AI default connectors.
$registry->register(
'akismet',
array(
'name' => __( 'Akismet Anti-spam' ),
'description' => __( 'Protect your site from spam.' ),
'type' => 'spam_filtering',
'plugin' => array(
'file' => 'akismet/akismet.php',
'is_active' => static function () {
return defined( 'AKISMET_VERSION' );
},
),
'authentication' => array(
'method' => 'api_key',
'credentials_url' => 'https://akismet.com/get/',
'setting_name' => 'wordpress_api_key',
'constant_name' => 'WPCOM_API_KEY',
),
)
);
/**
* Fires when the connector registry is ready for plugins to register connectors.
*
* Built-in connectors and any AI providers auto-discovered from the WP AI Client
* registry have already been registered at this point and cannot be unhooked.
*
* AI provider plugins that register with the WP AI Client do not need to use
* this action — their connectors are created automatically. This action is
* primarily for registering non-AI-provider connectors or overriding metadata
* on existing connectors.
*
* Use `$registry->register()` within this action to add new connectors.
* To override an existing connector, unregister it first, then re-register
* with updated data.
*
* Example — overriding metadata on an auto-discovered connector:
*
* add_action( 'wp_connectors_init', function ( WP_Connector_Registry $registry ) {
* if ( $registry->is_registered( 'anthropic' ) ) {
* $connector = $registry->unregister( 'anthropic' );
* $connector['description'] = __( 'Custom description for Anthropic.', 'my-plugin' );
* $registry->register( 'anthropic', $connector );
* }
* } );
*
* @since 7.0.0
*
* @param WP_Connector_Registry $registry Connector registry instance.
*/
do_action( 'wp_connectors_init', $registry );
}
Hooks
- do_action( ‘wp_connectors_init’,
WP_Connector_Registry $registry ) Fires when the connector registry is ready for plugins to register connectors.
Changelog
| Version | Description |
|---|---|
| 7.0.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.