woocommerce_order_item_product这个函数,在很多插件里都用到过,但是这个函数自从WooCommerce 3.0版本就开始过期了,如果你用的插件或者主题里还包含了这个函数,会产生一个这样的报错:“woocommerce_add_order_item_meta is deprecated since version 3.0.0! Use woocommerce_new_order_item instead”
尽管报错信息里提示用woocommerce_new_order_item函数代替,但实际上woocommerce_new_order_item函数的参数和woocommerce_order_item_product并不完全相同,不能靠直接替换函数名称来解决问题。
之所以写这一篇博客,是因为我之前的一篇关于产品自定义字段的博客里有代码遇到了这个报错。这里重新贴一下这段代码:
//6.在订单中保存自定义字段 add_action( 'woocommerce_add_order_item_meta', 'brain1981_product_add_on_order_item_meta', 10, 2 ); function brain1981_product_add_on_order_item_meta( $item_id, $values ) { if ( !empty( $values['my_custom_addon'] ) ) { wc_add_order_item_meta( $item_id, 'my_custom_addon', $values['my_custom_addon'], true ); } } //from: https://blog.brain1981.com |