在 WooCommerce 中使用 WC_Query 按作者 ID 获取产品?

Web*_*ign 2 php wordpress product author woocommerce

我尝试使用 WooCommerce 中的 WC_Query 通过帖子作者 id 获取产品,因此我尝试包含一个新的自定义元密钥 "_author",其中包含以下内容:

add_filter( 'woocommerce_product_data_store_cpt_get_products_query', 'handling_custom_meta_query_keys', 10, 3 );
function handling_custom_meta_query_keys( $wp_query_args, $query_vars ) {
    $meta_key = '_author'; 
    if ( ! empty( $query_vars[$meta_key] ) ) {
        $wp_query_args['meta_query'][] = array(
            'key'     => $meta_key,
            'value'   => esc_attr( $query_vars[$meta_key] ),
            'operator' => '==', 
        );
    }
    return $wp_query_args;
}
Run Code Online (Sandbox Code Playgroud)

然后我尝试将它与以下内容一起使用wc_get_products()

$product_list = wc_get_products( array('_author' => get_current_user_id()) );
Run Code Online (Sandbox Code Playgroud)

但它返回空数组。任何想法?

Loi*_*tec 5

您可以使用未记录的参数“author”在 WC_Query 中简单地按作者 ID 获取产品,如下所示:

$products = wc_get_products( array(
    'status'    => 'publish',
    'limit'     => -1,
    'author'    => get_current_user_id()
) );
Run Code Online (Sandbox Code Playgroud)

你将得到一个WC_Product对象数组