我正在尝试使用Sandeep Shetty的shopify.php创建自定义产品系列。 我已经能够进行其他功能API调用 - 显示产品和购物车等。但我无法使用“已知良好”的产品ID列表创建自定义集合。 继承我的代码:
$charge = array
(
"custom_collection"=>array
(
"title"=>"ThisTest",
"collects"=>array(
"product_id"=>96525818,
"product_id"=>96393246
)
)
);
try
{
// All requests accept an optional fourth parameter, that is populated with the response headers.
$my_collect = $shopify('POST', '/admin/custom_collections.json', $charge, $response_headers);
// API call limit helpers
echo shopify_calls_made($response_headers); // 2
echo shopify_calls_left($response_headers); // 298
echo shopify_call_limit($response_headers); // 300
}
catch (ShopifyApiException $e)
{
echo "doh";
print_r($e);
}
}
我收到了以下错误。
ShopifyApiException Object
( [info:protected] =>排列 ( [方法] => POST [路径] => /admin/custom_collections.json [params] =>排列 ( [custom_collection] =>排列 ( [title] => ToddTest [收集] =>排列 ( [product_id] => 96393246 )
)
)
[response_headers] => Array
(
[http_status_message] => Internal Server Error
[http_status_code] => 500
[server] => nginx
[date] => Mon, 16 Jul 2012 23:23:45 GMT
[content-type] => application/json; charset=utf-8
[transfer-encoding] => chunked
[connection] => keep-alive
[status] => 500 Internal Server Error
[x-shopify-shop-api-call-limit] => 18/500
[http_x_shopify_shop_api_call_limit] => 18/500
[cache-control] => no-cache
[x-request-id] => f22337df8773ff4fa2f9f384ca21f133
[x-ua-compatible] => IE=Edge,chrome=1
[set-cookie] => _secure_session_id=50f46da87f21f8a1b458baaf8e97a30a; path=/; secure; HttpOnly
[x-runtime] => 0.307888
)
[response] => Array
(
[errors] => Error
)
)
[message:protected] => Internal Server Error
[string:Exception:private] =>
[code:protected] => 500
[file:protected] => /home/lolsmg/www/shopify_pinterest/shopify.php
[line:protected] => 32
[trace:Exception:private] => Array
(
[0] => Array
(
[file] => /home/lolsmg/www/shopify_pinterest/pintrest_ui.php
[line] => 65
[function] => {closure}
[args] => Array
(
[0] => POST
[1] => /admin/custom_collections.json
[2] => Array
(
[custom_collection] => Array
(
[title] => ToddTest
[collects] => Array
(
[product_id] => 96393246
)
)
)
[3] => Array
(
[http_status_message] => Internal Server Error
[http_status_code] => 500
[server] => nginx
[date] => Mon, 16 Jul 2012 23:23:45 GMT
[content-type] => application/json; charset=utf-8
[transfer-encoding] => chunked
[connection] => keep-alive
[status] => 500 Internal Server Error
[x-shopify-shop-api-call-limit] => 18/500
[http_x_shopify_shop_api_call_limit] => 18/500
[cache-control] => no-cache
[x-request-id] => f22337df8773ff4fa2f9f384ca21f133
[x-ua-compatible] => IE=Edge,chrome=1
[set-cookie] => _secure_session_id=50f46da87f21f8a1b458baaf8e97a30a; path=/; secure; HttpOnly
[x-runtime] => 0.307888
)
)
)
)
[previous:Exception:private] =>
) 我从示例代码shopfiy工作,但没有得到很远。谢谢你的帮助。
答案 0 :(得分:1)
签入日志,看起来像是收集了'属性并未实际作为您在$ charge变量中指定的数组发送。查找request_id f22337df8773ff4fa2f9f384ca21f133后,这是您发送的请求:
{"custom_collection"=>{"title"=>"ToddTest", "collects"=>{"product_id"=>96393246}}}
请求应该看起来像这样:
{"custom_collection"=>{"title"=>"ToddTest", "collects"=>[{"product_id"=>96393246}]}}
请注意collects
是一个数组。