【问题标题】:Laravel + Shopify Osiset productVariantUpdate GraphQLLaravel + Shopify Oiset productVariantUpdate GraphQL
【发布时间】:2020-09-30 20:54:39
【问题描述】:

我想使用“osiset/Basic-Shopify-API”包批量更新产品变体的价格。

此查询完美运行:

$variant['input']['id'] = "gid://shopify/ProductVariant/31576237899799";
$variant['input']['price'] = 1;

 $productVariant = $api->graph('
    mutation productVariantUpdate($input: ProductVariantInput!) 
        {productVariantUpdate(input: $input) {userErrors { field message }}}
    ',$variant);

现在我想将许多产品变体传递给变异。

我找到了这个 GraphQL 查询:

mutation{
  ProductVariant1: productVariantUpdate(input: {
    id: "gid://shopify/ProductVariant/27868413755001",
    price: 34.97
  }){
    productVariant{ id, price }
  }

  ProductVariant2: productVariantUpdate(input: {
    id: "gid://shopify/ProductVariant/27868413788000",
    price: 34.97
  }){
    productVariant{ id, price }
  }
}

所以应该可以设置变量来查询 ProductVariant1: 并传递数组。

我该怎么做?

【问题讨论】:

    标签: php laravel graphql shopify


    【解决方案1】:

    我找到了一个解决方案。也许它可以帮助任何人。

    $variants[0]['id'] = "gid://shopify/ProductVariant/1";
            $variants[0]['price'] = 1;
    
            $variants[1]['id'] = "gid://shopify/ProductVariant/2";
            $variants[1]['price'] = 2;
    
            //build query
            $query = '';
    
            $countRun = 1;
    
            foreach($variants as $variant)
            {
    
                if($countRun == 1)
                {
                    $query = 'mutation{
                        ProductVariant'.$countRun.': productVariantUpdate(input: {
                          id: "'.$variant['id'].'",
                          price: '.$variant['price'].'
                        }){
                          productVariant{ id, price }
                        }
    
                        ';
                }
                else{
                    $query = $query.'ProductVariant'.$countRun.': productVariantUpdate(input: {
                        id: "'.$variant['id'].'",
                        price: '.$variant['price'].'
                      }){
                        productVariant{ id, price }
                      }
    
                      ';
                }
    
                    $countRun++;
            }
    
            $query = $query.'}';
    
            $runQuery = $api->graph($query);
    
           return $runQuery;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-28
      • 2020-07-27
      • 1970-01-01
      • 2020-04-22
      • 2019-04-06
      • 2021-03-09
      • 2020-03-10
      • 2021-04-14
      相关资源
      最近更新 更多