我在woocommerce中添加了自定义产品。我正在尝试使用以下代码过滤我的custom_product,但我的custom_product的product_type似乎仍然是“ product”。如何过滤我的自定义产品? 例如。下面的代码可以过滤默认的woocommerce可变产品
$filtered_products = $wpdb->get_results(
"
SELECT *
FROM `" . $wpdb->prefix . "posts`
where (post_type='product_variation') AND post_status='publish'
"
);
但是下面的代码无法过滤我添加的自定义产品类型
$filtered_products = $wpdb->get_results(
"
SELECT *
FROM `" . $wpdb->prefix . "posts`
where (post_type='custom_product') AND post_status='publish'
"
);
还有其他建议来过滤我的custom_product吗?
答案 0 :(得分:1)
如果您需要通过代码获取产品,我可能会使用wc_get_products()
。
// Get custom_product products.
$args = array(
'type' => 'custom_product',
);
$products = wc_get_products( $args );
来源:https://github.com/woocommerce/woocommerce/wiki/wc_get_products-and-WC_Product_Query
要使用我认为的REST API,您将向该URL发送一个请求:
/wp-json/wc/v3/products?type=custom_product
https://woocommerce.github.io/woocommerce-rest-api-docs/?shell#list-all-products
答案 1 :(得分:0)
使用WP_QUERY而不是SQL查询解决了它。从下面的链接获得帮助 Meta Query