如何在一个阵列中获取所有产品的ID?
输出应该是一个包含一些数字的简单数组,仅此而已。
我被建议不要使用query_posts()
,所以我更喜欢不使用此功能的解决方案。
有多种方法可以在阵列中获取所有产品ID:
1)使用Woocommerce WC_Product_Query
:
$ids = wc_get_products( array( 'return' => 'ids', 'limit' => -1 ) );
2)使用Wordpress WP_Query
(包括产品变体ID),
$ids = get_posts( array(
'posts_per_page' => -1,
'post_type' => array('product','product_variation'),
'fields' => 'ids',
) );
3)使用WPDB
(SQL查询)(包括产品变体IDS):
global $wpdb;
$ids = $wpdb->get_col( "SELECT ID FROM {$wpdb->prefix}posts WHERE post_type IN ('product','product_variation')");
在最后两种方法中你可以删除
'product_variation'
帖子类型,如果你不想要它。