我正在开发一个插件,扩展Woocommerce并充当自定义产品过滤器。我遇到的问题是,它没有绑定到一个特定的站点,必须从外部API调用获取产品,这限制了每页100个结果,我需要的产品不到1000个。我宁愿只通过一次调用来获取这些数据,而不需要一些复杂的循环来将各个页面调用的结果粘合在一起。似乎绕过此限制的唯一(推荐)方法是使用wc_get_products 方法,使用limit
设置为-1可退回所有产品。但如果没有一个明确的父站点,我看不到如何应用该方法,如果可以的话,如何将API调用函数转换为wc_get_products
可以读取,但最初不限于前100个产品结果。
在插件中从REST API调用获取所有WooCommerce产品
1 个回复
SO网友:Michael C
在这里,我很接近答案,但由于不熟悉全球Wordpress的功能,以及如何使用它来扩展插件,我感到有些犹豫。我所需要做的就是将插件逻辑包装起来,检查Woocommerce是否存在:
if ( in_array( \'woocommerce/woocommerce.php\', apply_filters( \'active_plugins\', get_option( \'active_plugins\' ) ) ) ) {
// Stuff goes here
}
。。。并设置搜索参数:$args = array(
\'limit\' => -1,
\'category\' => array($category_slug),
\'tag\' => array($tag_slug));
$products = wc_get_products( $args );