WooCommerce兼容性 - 在第三方插件中使用旧版本的get_id()方法

时间:2017-07-19 21:10:37

标签: php wordpress methods plugins woocommerce

是否有人知道是否可以在第三方插件中添加旧版WooCommerce的get_id()方法,因此它可以与Google代码管理器插件配合使用?

我现在不想更新插件,因为它会弄乱网站。

任何人都知道这是否可能?

由于

1 个答案:

答案 0 :(得分:1)

是的,您可以在WC_ProductWC_Order个对象等任何WooCommerce对象上使用PHP函数method_exists() ...

以下是WC_Product对象 $product 的示例:

// WooCommerce retro-compatibility (compact)
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $order->id;

或者您也可以使用version_compare()PHP函数:

// WooCommerce retro-compatibility (2)
if ( version_compare( WC_VERSION, '3.0', '<' ) ) {
    // Older than 3.0
    $product_id = $product->id;
} else {
    // 3.0 and above
    $product_id = $product->get_id();
}

以紧凑的方式:

$product_id = version_compare( WC_VERSION, '3.0', '<' ) ? $product->id : $product->get_id();

$product 是现有且已定义的 WC_Product 对象...)