是否有人知道是否可以在第三方插件中添加旧版WooCommerce的get_id()
方法,因此它可以与Google代码管理器插件配合使用?
我现在不想更新插件,因为它会弄乱网站。
任何人都知道这是否可能?
由于
答案 0 :(得分:1)
是的,您可以在WC_Product
或WC_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
对象...)