获取阵列中的所有Woocommerce产品ID

问题描述 投票:1回答:1

如何在一个阵列中获取所有产品的ID?

输出应该是一个包含一些数字的简单数组,仅此而已。

我被建议不要使用query_posts(),所以我更喜欢不使用此功能的解决方案。

php sql wordpress woocommerce product
1个回答
3
投票

有多种方法可以在阵列中获取所有产品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'帖子类型,如果你不想要它。

© www.soinside.com 2019 - 2024. All rights reserved.