Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 检查WooCommerce版本时如何显示管理员通知_Php_Wordpress_Woocommerce_Versioning - Fatal编程技术网

Php 检查WooCommerce版本时如何显示管理员通知

Php 检查WooCommerce版本时如何显示管理员通知,php,wordpress,woocommerce,versioning,Php,Wordpress,Woocommerce,Versioning,我想显示一个管理员通知,应该显示如果WooCommerce不是最新版本。我尝试了以下不起作用的函数。任何帮助都将不胜感激 function check_wc_version($version = '2.6.1'){ if ( function_exists( 'is_woocommerce_active' ) && is_woocommerce_active() ) { global $woocommerce; if( version_co

我想显示一个管理员通知,应该显示如果WooCommerce不是最新版本。我尝试了以下不起作用的函数。任何帮助都将不胜感激

function check_wc_version($version = '2.6.1'){
    if ( function_exists( 'is_woocommerce_active' ) && is_woocommerce_active() ) {
        global $woocommerce;
        if( version_compare( $woocommerce, $version, ">=" ) ) {
            echo 'Show some notice here';
        } 
    }
}
add_action('admin_notices', 'check_wc_version');

您的函数是正确的,但不起作用,因为
$woocommerce
不是版本号。它是一个已被弃用的全局变量,但包含main
WooCommerce
类的实例。现在可以通过函数
WC()
获取该类的单例实例。其中一个类变量是
version
,因此可以通过
WC()->version
获取当前版本的WC。另外,我认为您需要翻转比较运算符。未经测试,但我认为这会起作用

function check_wc_version($version = '2.6.1'){
    if ( function_exists( 'WC' ) && ( version_compare( WC()->version, $version, "<" ) ) {
            echo 'You need a higher version of WooCommerce';
    }
}
add_action('admin_notices', 'check_wc_version');
功能检查\u wc\u版本($version='2.6.1'){

if(function_exists('WC')&(version_compare(WC()->version,$version),“谢谢您的回复。实际上,我使用了这样一个常量if(defined('WOOCOMMERCE_version')&&version_compare(WOOCOMMERCE_version,'2.6.0','>=')){