is_wp_version_compatible()
云策文档标注
概述
is_wp_version_compatible() 函数用于检查当前 WordPress 版本是否与指定要求版本兼容。它处理版本字符串,支持测试环境,并返回布尔值。
关键要点
- 函数接受一个字符串参数 $required,表示所需的最低 WordPress 版本。
- 返回布尔值:如果 $required 为空或当前版本大于等于要求版本,则返回 true;否则返回 false。
- 在测试环境中(如 WP_RUN_CORE_TESTS 定义),函数使用全局变量 $_wp_tests_wp_version 获取版本号。
- 函数会去除版本号中的后缀(如 -alpha、-RC、-beta、-src),并处理以 .0 结尾的多点版本字符串。
- 该函数在 WordPress 5.2.0 版本中引入,广泛用于主题和插件的兼容性验证。
代码示例
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();
}
// Strip off any -alpha, -RC, -beta, -src suffixes.
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, '>=' );
}
原文内容
Checks compatibility with the current WordPress version.
Parameters
$requiredstringrequired-
Minimum required WordPress version.
Source
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();
}
// Strip off any -alpha, -RC, -beta, -src suffixes.
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, '>=' );
}
Changelog
| Version | Description |
|---|---|
| 5.2.0 | Introduced. |