我正在尝试使用Shopify API参考中描述的图像元域功能:
"{
"position":1,
"metafields":[
{"key":"variant_sku",
"value":"A176-6053",
"value_type":"string",
"namespace":"global"}
],
"src":"http://some.url/images/000/013/369/original/a176-6053.jpg?1337973636
}
当我在Rails控制台中提取此产品时,我看不到元数据(图像对象没有metafields方法),而且我没有运气指的是液体模板中的元数据: / p>
{{ image.metafields.global.variant_sku }}
我注意到此列表中明显缺少图像,描述了可以使用元字段的位置:“您可以存储有关产品,变体,集合,订单,博客,页面的其他信息,并在元数据库中自行购物。”
然而,API参考中有一个图像示例。我错过了什么?
我的最终目标是通过API发送SKU以及图像,然后通过液体/ javascript访问它,以支持显示特定颜色/样式变化的正确图像。
感谢您的帮助。
答案 0 :(得分:1)
Metafield需要自己为资源请求,默认情况下它们不会嵌入到响应中。 API文档提供了如何检索它们的示例。
答案 1 :(得分:0)
看到图像的'alt'标记是一个元字段,为什么不在图像的alt标记中设置SKU。
您可以通过Shopify液体访问'alt'标签的设定值 - 只是您无法通过ShopifyAPI检索'alt'标签。
这是我的Rails示例,用于保存通过html表单提交的图片,并使用它保存“alt”标记...
images = params[:images] || nil
if images
images.each do |image|
a = ShopifyAPI::Image.new
a.prefix_options = {:product_id => params[:product_id]}
a.metafields = [{:key => 'alt', :value => 'Cake', :value_type => "string", :namespace => "tags"}]
a.attachment = Base64.encode64(image.read)
a.filename = image.original_filename
a.save
end
else
.
.
.
希望有所帮助。