今天我发生了一些有趣的问题,我无法比较两个版本的WordPress安装。
注意:我想比较WordPress版本,而不是PHP版本。
我尝试这样的例子:
if(version_compare(get_bloginfo('version'),'3.5') >= 0)
echo 'Wordpress Version same or above 3.5';
else
echo 'Wordpress Version below 3.5';
我犯了错误?
我得到-1,WordPress版本4.7.2需要1,get_bloginfo()
返回。
我在本地PHP7中使用,但我的客户端将使用PHP5.6,PHP5.4或者无所事事。
答案 0 :(得分:7)
使用此代码:
if(version_compare(get_bloginfo('version'),'3.5', '>=') )
echo 'Wordpress Version same or above 3.5';
else
echo 'Wordpress Version below 3.5';
答案 1 :(得分:1)
尽管回答了,但值得注意的是,$wp_version
全局变量也可以检索当前安装的版本。
global $wp_version;
if ( version_compare($wp_version,'3.5') >= 0) {
echo 'Wordpress Version same or above 3.5';
} else {
echo 'Wordpress Version below 3.5';
}
此外,考虑到该版本已分配给$wp_version
中的/wp-includes/version.php
中的/wp-load.php
,因此该变量已经在全局范围内,因此您可以省略{{ 1}},但是您的IDE可能会抱怨(因此不一定推荐)。
global $wp_version
...或者:
if ( version_compare($wp_version,'3.5') >= 0) {
echo 'Wordpress Version same or above 3.5';
} else {
echo 'Wordpress Version below 3.5';
}
有趣的是if ( version_compare(GLOBALS['wp_version'],'3.5') >= 0) {
echo 'Wordpress Version same or above 3.5';
} else {
echo 'Wordpress Version below 3.5';
}
中的WordPress在函数中调用/wp-admin/update-core.php
:
get_bloginfo('version')
list_core_update
core_upgrade_preamble
list_plugin_updates
...如果还向调用after_core_update
提供了另一个值为get_bloginfo('version')
的自变量,例如:
display
...然后该值也可以通过以下方式过滤:
get_bloginfo('version', 'display')
...值得一提的是,返回的版本在使用前已被修改,因此您依赖精确的版本阅读。
答案 2 :(得分:1)
您也可以尝试这种方式
if ( version_compare( $GLOBALS['wp_version'], '3.5', '>=' ) ) {
echo 'Wordpress Version same or above 3.5';
}
else{
echo 'Wordpress Version below 3.5';
}