Пользовательская конечная точка для продуктов WooCommerce - PullRequest
0 голосов
/ 01 апреля 2020

Я написал фрагмент кода, который будет отображать все мои продукты по их SKU и количеству STOCK. Но для переменных продуктов он возвращает только родительский заголовок и запас некоторых вариантов.

Вот код:

add_action( 'rest_api_init', 'my_register_route');

function my_register_route() {

        register_rest_route( 'devlent', 'products', array(
                'methods' => 'GET',
                'callback' => 'my_posts'
        ));
}

function my_posts() {

    $products=array();
    $args = array(
      'post_type' => 'product',
      'posts_per_page' => -1
  );
  $loop = new WP_Query( $args );
  if ( $loop->have_posts() ): while ( $loop->have_posts() ): $loop->the_post();

      global $product;

      $id = $product->get_id();
      $sku = $product->get_sku();
      $stock = $product->get_stock_quantity();

      $products[ $sku ][ 'STOCK-O' ] = $stock;



  endwhile; endif; wp_reset_postdata();

return rest_ensure_response($products);


}

Я получаю следующее (пример ): "EASY ARM WARMER": {"STOCK": 3}

А "EASY ARM WARMER" - это SKU исходного продукта, который имеет больше вариаций. И теперь он возвращает количество запаса как «3», но на самом деле есть вариации с большим количеством запаса, и это не сумма, а только запас одного из вариантов.

Вы знаете, как можно это исправить?

спасибо заранее!

...