(ID ではなく) 番号で WooCommerce 注文を取得するにはどうすればよいですか?
次のようなカスタム引数で wc_get_orders を使用してみました。
wc_get_orders( array( 'number' => '1000' ) );
しかし、うまくいかないようです。
ありがとう!
(ID ではなく) 番号で WooCommerce 注文を取得するにはどうすればよいですか?
次のようなカスタム引数で wc_get_orders を使用してみました。
wc_get_orders( array( 'number' => '1000' ) );
しかし、うまくいかないようです。
ありがとう!
注文番号機能は、WooCommerce のサードパーティ プラグインを介して実際に有効になります。この場合、WooCommerce 投稿タイプのデータベース テーブルに新しくmeta_key
存在します。wp_postmeta
shop_order
_order_number
wc_get_orders()
したがって、 (in a WC_Order_Query
)を使用する場合、このパラメーターはデフォルトでは存在しません。
number
ただし、次のコードを使用して" " パラメータを追加/有効にすることができます。
add_filter( 'woocommerce_order_data_store_cpt_get_orders_query', 'handle_order_number_custom_query_var', 10, 2 );
function handle_order_number_custom_query_var( $query, $query_vars ) {
if ( ! empty( $query_vars['number'] ) ) {
$query['meta_query'][] = array(
'key' => '_order_number',
'value' => esc_attr( $query_vars['number'] ),
);
}
return $query;
}
コードは、アクティブな子テーマ (またはアクティブなテーマ) の functions.php ファイルに入ります。テスト済みで動作します。
number
パラメータを使用して、次の方法で注文番号から注文を取得できますWC_Order_Query
。
$order = wc_get_orders( array( 'number' => 1000 ) );
ドキュメントを参照してください: Adding Custom Parameter Support in a WC_Order_Query。