2016-07-25 4 views
0

Я могу разместить ряд metafields для существующего продукта, если я это сделать по одному за раз:Shopify - добавление нескольких metafields

/admin/products/#{id}/metafields.json

{  "metafield":  
    {    
     "namespace":"c_f", 
     "key":"label", 
     "value":"Am:pm",   
     "value_type":"string"  
    } 

} 

Когда я пытаюсь добавить несколько полей в одной и той же должности, я получаю сообщение об ошибке:

{  "metafields":[ 
     {    
      "namespace":"c_f", 
      "key":"artist", 
      "value":"CHEMICAL BROTHERS",   
      "value_type":"string"  
     }, 
     {    
      "namespace":"c_f", 
      "key":"label", 
      "value":"Virgin",   
      "value_type":"string"  
     } 
     ]  
    } 

ошибка является:

"metafield": "Required parameter missing or invalid" 

API имеет примеры публикации только одного метафила. Есть ли способ объединить метафилы (нужно около 8) в один запрос POST?

+0

у вас есть mulitiple пример, показывающий, как 'metafields' с S, поэтому искомое поле' metafield' отсутствует. –

+0

Вы имеете в виду замену метафилей метафоном как верхнее имя - это вызывает еще одну ошибку. Использование его как имени внутри ошибки массива - неожиданный токен –

ответ

4

Попробуйте сделать запрос PUTlike this one с продуктом:

PUT /admin/products/5040616004.json HTTP/1.1 
Host: yourshop.myshopify.com 
X-Shopify-Access-Token: 085abas8bd90325c3f81s8e9c88befc0 
Content-Type: application/json 

{ 
    "product": { 
    "metafields": [{ 
     "namespace": "c_f", 
     "key": "artist", 
     "value": "CHEMICAL BROTHERS", 
     "value_type": "string" 
    }, { 
     "namespace": "c_f", 
     "key": "label", 
     "value": "Virgin", 
     "value_type": "string" 
    }] 
    } 
} 
+0

Это работает, спасибо. Похоже, вы можете публиковать только один метафилд напрямую, но shopify с удовольствием создает несколько метафилей при обновлении. Я добавлю ваш код в POST продукта, это приведет к загрузке моего продукта примерно в 10 раз быстрее. –

+0

Просто для подтверждения - отлично работает с продуктом POST –

+0

Рад это слышать! –

Смежные вопросы