Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PHP Extension) Shopify Create a new unpublished productCreate a new unpublished product
<?php // The version number (9_5_0) should match version of the Chilkat extension used, omitting the micro-version number. // For example, if using Chilkat v9.5.0.48, then include as shown here: include("chilkat_9_5_0.php"); $rest = new CkRest(); $rest->SetAuthBasic('SHOPIFY_PRIVATE_API_KEY','SHOPIFY_PRIVATE_API_KEY'); $success = $rest->Connect('chilkat.myshopify.com',443,true,true); if ($success != true) { print $rest->lastErrorText() . "\n"; exit; } // The following code creates the JSON request body. // The JSON created by this code is shown below. $jsonReq = new CkJsonObject(); $jsonReq->UpdateString('product.title','Burton Custom Freestyle 151'); $jsonReq->UpdateString('product.body_html','<strong>Good snowboard!</strong>'); $jsonReq->UpdateString('product.vendor','Burton'); $jsonReq->UpdateString('product.product_type','Snowboard'); $jsonReq->UpdateBool('product.published',false); // The JSON request body created by the above code: // { // "product": { // "title": "Burton Custom Freestyle 151", // "body_html": "<strong>Good snowboard!<\/strong>", // "vendor": "Burton", // "product_type": "Snowboard", // "published": false // } // } $sbReq = new CkStringBuilder(); $jsonReq->EmitSb($sbReq); $rest->AddHeader('Content-Type','application/json'); $sbJson = new CkStringBuilder(); $success = $rest->FullRequestSb('POST','/admin/products.json ',$sbReq,$sbJson); if ($success != true) { print $rest->lastErrorText() . "\n"; exit; } if ($rest->get_ResponseStatusCode() != 201) { print 'Received error response code: ' . $rest->get_ResponseStatusCode() . "\n"; print 'Response body:' . "\n"; print $sbJson->getAsString() . "\n"; exit; } $json = new CkJsonObject(); $json->LoadSb($sbJson); // The following code parses the JSON response. // A sample JSON response is shown below the sample code. $productId = $json->IntOf('product.id'); $productTitle = $json->stringOf('product.title'); $productBody_html = $json->stringOf('product.body_html'); $productVendor = $json->stringOf('product.vendor'); $productProduct_type = $json->stringOf('product.product_type'); $productCreated_at = $json->stringOf('product.created_at'); $productHandle = $json->stringOf('product.handle'); $productUpdated_at = $json->stringOf('product.updated_at'); $productPublished_at = $json->IsNullOf('product.published_at'); $productTemplate_suffix = $json->IsNullOf('product.template_suffix'); $productPublished_scope = $json->stringOf('product.published_scope'); $productTags = $json->stringOf('product.tags'); $productImage = $json->IsNullOf('product.image'); $i = 0; $count_i = $json->SizeOfArray('product.variants'); while ($i < $count_i) { $json->put_I($i); $id = $json->IntOf('product.variants[i].id'); $product_id = $json->IntOf('product.variants[i].product_id'); $title = $json->stringOf('product.variants[i].title'); $price = $json->stringOf('product.variants[i].price'); $sku = $json->stringOf('product.variants[i].sku'); $position = $json->IntOf('product.variants[i].position'); $grams = $json->IntOf('product.variants[i].grams'); $inventory_policy = $json->stringOf('product.variants[i].inventory_policy'); $compare_at_price = $json->IsNullOf('product.variants[i].compare_at_price'); $fulfillment_service = $json->stringOf('product.variants[i].fulfillment_service'); $inventory_management = $json->IsNullOf('product.variants[i].inventory_management'); $option1 = $json->stringOf('product.variants[i].option1'); $option2 = $json->IsNullOf('product.variants[i].option2'); $option3 = $json->IsNullOf('product.variants[i].option3'); $created_at = $json->stringOf('product.variants[i].created_at'); $updated_at = $json->stringOf('product.variants[i].updated_at'); $taxable = $json->BoolOf('product.variants[i].taxable'); $barcode = $json->IsNullOf('product.variants[i].barcode'); $image_id = $json->IsNullOf('product.variants[i].image_id'); $inventory_quantity = $json->IntOf('product.variants[i].inventory_quantity'); $weight = $json->IntOf('product.variants[i].weight'); $weight_unit = $json->stringOf('product.variants[i].weight_unit'); $old_inventory_quantity = $json->IntOf('product.variants[i].old_inventory_quantity'); $requires_shipping = $json->BoolOf('product.variants[i].requires_shipping'); $i = $i + 1; } $i = 0; $count_i = $json->SizeOfArray('product.options'); while ($i < $count_i) { $json->put_I($i); $id = $json->IntOf('product.options[i].id'); $product_id = $json->IntOf('product.options[i].product_id'); $name = $json->stringOf('product.options[i].name'); $position = $json->IntOf('product.options[i].position'); $j = 0; $count_j = $json->SizeOfArray('product.options[i].values'); while ($j < $count_j) { $json->put_J($j); $strVal = $json->stringOf('product.options[i].values[j]'); $j = $j + 1; } $i = $i + 1; } $i = 0; $count_i = $json->SizeOfArray('product.images'); while ($i < $count_i) { $json->put_I($i); $i = $i + 1; } // A sample JSON response body that is parsed by the above code: // { // "product": { // "id": 1071559753, // "title": "Burton Custom Freestyle 151", // "body_html": "<strong>Good snowboard!<\/strong>", // "vendor": "Burton", // "product_type": "Snowboard", // "created_at": "2017-09-22T14:48:52-04:00", // "handle": "burton-custom-freestyle-151", // "updated_at": "2017-09-22T14:48:52-04:00", // "published_at": null, // "template_suffix": null, // "published_scope": "global", // "tags": "", // "variants": [ // { // "id": 1070325224, // "product_id": 1071559753, // "title": "Default Title", // "price": "0.00", // "sku": "", // "position": 1, // "grams": 0, // "inventory_policy": "deny", // "compare_at_price": null, // "fulfillment_service": "manual", // "inventory_management": null, // "option1": "Default Title", // "option2": null, // "option3": null, // "created_at": "2017-09-22T14:48:52-04:00", // "updated_at": "2017-09-22T14:48:52-04:00", // "taxable": true, // "barcode": null, // "image_id": null, // "inventory_quantity": 1, // "weight": 0.0, // "weight_unit": "lb", // "old_inventory_quantity": 1, // "requires_shipping": true // } // ], // "options": [ // { // "id": 1022828912, // "product_id": 1071559753, // "name": "Title", // "position": 1, // "values": [ // "Default Title" // ] // } // ], // "images": [ // ], // "image": null // } // } print 'Example Completed.' . "\n"; ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.