wp_supports_ai()
Проверяет, можно ли использовать AI-функции WordPress в текущем окружении.
Функция служит общей точкой проверки перед запуском AI-возможностей: генерацией текста, обращением к AI-провайдерам, построением промптов и другими LLM-сценариями.
По умолчанию AI считается включённым. Отключить его можно константой WP_AI_SUPPORT или через фильтр wp_supports_ai.
Если AI-функциональность в плагине или теме необязательна, перед её запуском лучше проверять wp_supports_ai(). Так код будет уважать глобальные настройки сайта.
При WP_AI_SUPPORT = false поддержка жестко отключена (до фильтра дело даже не дойдет).
При WP_AI_SUPPORT = true или если не установлена, поддрежку можно изменить через хук.
Хуки из функции
Возвращает
true|false.
true— AI-функции можно использовать в текущем запросе.false— AI-функции отключены или недоступны.
Использование
wp_supports_ai(): bool;
Примеры
#1 Проверка перед запуском AI-логики
Пример показывает, как не запускать AI-код, если поддержка AI отключена на сайте.
if ( ! wp_supports_ai() ) {
return;
}
// Здесь можно безопасно запускать AI-функциональность.
#2 Отключение AI через константу
Константу обычно задают в wp-config.php. После этого wp_supports_ai() получит false, если значение не будет изменено фильтром.
define( 'WP_AI_SUPPORT', false );
#3 Отключение AI через фильтр
Пример полностью отключает AI-функции на сайте через фильтр wp_supports_ai.
add_filter( 'wp_supports_ai', '__return_false' );
#4 Отключение AI только в админке
Пример отключает AI-функции только для запросов в админ-панели.
add_filter( 'wp_supports_ai', 'my_disable_ai_in_admin' );
function my_disable_ai_in_admin( $is_enabled ) {
if ( is_admin() ) {
return false;
}
return $is_enabled;
}Список изменений
| С версии 7.0.0 | Введена. |
Код wp_supports_ai() wp supports ai WP 7.0
function wp_supports_ai(): bool {
// Return early if AI is disabled by the current environment.
if ( defined( 'WP_AI_SUPPORT' ) && ! WP_AI_SUPPORT ) {
return false;
}
/**
* Filters whether the current request can use AI.
*
* This allows plugins and 3rd-party code to disable AI features on a per-request basis, or to even override explicit
* preferences defined by the site owner.
*
* @since 7.0.0
*
* @param bool $is_enabled Whether AI is available. Default to true.
*/
return (bool) apply_filters( 'wp_supports_ai', true );
}