Функция IS_WP_VERSION_COMPATIBLE() │ WP 5.2.0
Функция is_wp_version_compatible() проверяет, совместима ли версия WordPress, установленная на вашем сайте, с указанной необходимой версией.
Используется в
Эта функция используется, например, в функции validate_plugin_requirements().
Возвращаемое значение
Функция возвращает true или false.
- Если требуемая версия совместима или пустая, возвращается
true. - Если версия несовместима, возвращается
false.
Синтаксис
Вызывается следующим образом:
is_wp_version_compatible( $required );
Где $required — это строка, указывающая минимально необходимую версию WordPress.
Параметры
$required(string) (обязательный) — минимальная требуемая версия WordPress.
Примеры использования
Пример 1: Проверка совместимости версии
get_bloginfo( 'version' ); // 5.2
is_wp_version_compatible( '4.9' ); // true
is_wp_version_compatible( '5.2' ); // true
is_wp_version_compatible( '5.2.1' ); // false
is_wp_version_compatible( '5.5' ); // false
Пример 2: Уведомление о неподходящей версии WordPress
Предположим, что вы создали плагин, который работает только на версиях WordPress 5.2 и выше. В таком случае вам нужно убедиться, что главный код плагина не выполняется, если установленная версия WordPress ниже необходимой.
Пример кода:
if ( is_wp_version_compatible( '5.2' ) ) {
require_once __DIR__ . '/main-file-plugin.php';
} else {
add_action( 'admin_notices', 'admin_php_version__error' );
}
function admin_php_version__error() {
?>
Плагин требует версию WordPress 5.2 или выше.
Код выше является примером и показывает, как отображать уведомление.
Примечания
- Глобальная переменная. Строка
$_wp_tests_wp_versionсодержит строку версии WordPress. Используется только в тестах ядра.
Изменения
- Начиная с версии 5.2.0. Функция была введена в данной версии.
Как работает is_wp_version_compatible()
Функция is_wp_version_compatible определяет, совместима ли версия WordPress. Вот краткий обзор ее работы:
function is_wp_version_compatible( $required ) {
if (
defined( 'WP_RUN_CORE_TESTS' )
&& WP_RUN_CORE_TESTS
&& isset( $GLOBALS['_wp_tests_wp_version'] )
) {
$wp_version = $GLOBALS['_wp_tests_wp_version'];
} else {
$wp_version = wp_get_wp_version();
}
// Убираем суффиксы: -alpha, -RC, -beta, -src
list( $version ) = explode( '-', $wp_version );
if ( is_string( $required ) ) {
$trimmed = trim( $required );
if ( substr_count( $trimmed, '.' ) > 1 && str_ends_with( $trimmed, '.0' ) ) {
$required = substr( $trimmed, 0, -2 );
}
}
return empty( $required ) || version_compare( $version, $required, '>=' );
}
Функция проверяет, определены ли тесты ядра и получает версию WordPress. Затем выполняется сравнение текущей версии с требуемой.
Теперь вы знаете, как использовать функцию is_wp_version_compatible() для проверки совместимости версий WordPress. Это важно для обеспечения правильной работы ваших плагинов и тем.