wpseek.com
A WordPress-centric search engine for devs and theme authors



_wp_connectors_get_api_key_source › WordPress Function

Since7.0.0
Deprecatedn/a
_wp_connectors_get_api_key_source ( $setting_name, $env_var_name = '', $constant_name = '' )
Access:
  • private
Parameters: (3)
  • (string) $setting_name The option name for the API key (e.g., 'connectors_spam_filtering_my_plugin_api_key').
    Required: Yes
  • (string) $env_var_name Optional. Environment variable name to check (e.g., 'MY_PLUGIN_API_KEY').
    Required: No
    Default: (empty)
  • (string) $constant_name Optional. PHP constant name to check (e.g., 'MY_PLUGIN_API_KEY').
    Required: No
    Default: (empty)
Returns:
  • (string) The key source: 'env', 'constant', 'database', or 'none'.
Defined at:
Codex:

Determines the source of an API key for a given connector.

Checks in order: environment variable, PHP constant, database. Environment variable and constant are only checked when their respective names are provided.


Source

function _wp_connectors_get_api_key_source( string $setting_name, string $env_var_name = '', string $constant_name = '' ): string {
	// Check environment variable first.
	if ( '' !== $env_var_name ) {
		$env_value = getenv( $env_var_name );
		if ( false !== $env_value && '' !== $env_value ) {
			return 'env';
		}
	}

	// Check PHP constant.
	if ( '' !== $constant_name && defined( $constant_name ) ) {
		$const_value = constant( $constant_name );
		if ( is_string( $const_value ) && '' !== $const_value ) {
			return 'constant';
		}
	}

	// Check database.
	$db_value = get_option( $setting_name, '' );
	if ( '' !== $db_value ) {
		return 'database';
	}

	return 'none';
}