我已经搜索了一个解决方案,在我的订单号前加上订购产品的名称或首字母。
我尝试在functions.php文件上使用一个函数在我的订单号前加上woocommerce_order_number
过滤器,但是我无法在订单数组中获得产品名称(它是受保护的)。
例如,是否有一种方法可以在我的函数上使用循环来返回这个值?
发布于 2017-11-07 10:12:17
你可以这样做:
function filter_woocommerce_order_number( $this_get_id, $instance ) {
$order = new WC_Order( $this_get_id );
$items = $order->get_items();
foreach ( $items as $item ) {
$product_name = preg_replace('/\s+/', '_', $item['name']);;
break;
}
$new_id = $product_name.'_'.$this_get_id;
return $new_id;
};
add_filter( 'woocommerce_order_number', 'filter_woocommerce_order_number', 10, 2 );
https://stackoverflow.com/questions/47163980
复制相似问题