# _wp_connectors_get_api_key_source()

URL: https://chugunov.pro/api-wordpress/functions/_wp_connectors_get_api_key_source/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 7.0.0.

## Сигнатура

```php
_wp_connectors_get_api_key_source( string $setting_name, string $env_var_name = '', string $constant_name = '' ): string
```

## Описание

Проверяет в следующем порядке: переменная окружения, PHP-константа, база данных.
Переменная окружения и константа проверяются только тогда, когда указаны их имена.

## Параметры

- `$setting_name` `string` — обязательный. Имя опции для ключа API (например, 'connectors_spam_filtering_my_plugin_api_key').
- `$env_var_name` `string` — необязательный, по умолчанию `''`. Имя проверяемой переменной окружения (например, 'MY_PLUGIN_API_KEY').
- `$constant_name` `string` — необязательный, по умолчанию `''`. Имя проверяемой PHP-константы (например, 'MY_PLUGIN_API_KEY').

## Возвращаемое значение

`string` — 'env' 'constant' 'database' 'none'

## Исходный код

Файл: `wp-includes/connectors.php:440`

```php
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';
}
```

## История изменений

- 7.0.0 — Introduced.

## Связанные

Использует: [`get_option`](https://chugunov.pro/api-wordpress/functions/get_option/).
Используется в: [`_wp_connectors_get_connector_script_module_data`](https://chugunov.pro/api-wordpress/functions/_wp_connectors_get_connector_script_module_data/), [`_wp_connectors_pass_default_keys_to_ai_client`](https://chugunov.pro/api-wordpress/functions/_wp_connectors_pass_default_keys_to_ai_client/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/_wp_connectors_get_api_key_source/
