如何获取具有特定名称/值的所有变体ID

时间:2018-07-30 20:09:51

标签: woocommerce

我正在尝试获取商店中具有特定名称/值的所有变体ID。

我有很多变量产品,有些变量的名称包含字符串。我需要获取这些版本的ID。

我在网上找到的所有内容都会从ID的名称中找到,但是我需要做相反的事情。

1 个答案:

答案 0 :(得分:0)

这就是我最终想出自己的问题的答案:

global $products;
$products = array();

$all_products = wc_get_products(array(
    'numberposts' => -1,
    'post_status' => 'published',
    'type' => 'variable'
));

foreach ($all_products as $product) {
    $available_variations = $product->get_available_variations();

    foreach ($available_variations as $variation) {
        $variation_id = $variation['variation_id'];
        $variation_product = wc_get_product($variation_id);
        $variation_you_want_to_search = $variation_product->get_attribute( 'variation-attribute-name' );

        if (strpos($variation_you_want_to_search, 'STRING TO SEARCH FOR') !== false) {
            array_push($products, $variation_id);
        }
    }
}