PHP code example of arslanramay / php-shopify-api

1. Go to this page and download the library: Download arslanramay/php-shopify-api library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

arslanramay / php-shopify-api example snippets


use arslanramay\ShopifyPHP\Shopify;

// Initialize the client
$shopify = new Shopify('exampleshop.myshopify.com', 'mysupersecrettoken');

// Get all products
$result = $shopify->call('GET', 'admin/products.json');

// Get the products with ids of '9326553104669' and '9339160002845' with only the 'id', 'images', and 'title' fields
$result = $shopify->call('GET', 'admin/products.json', [
    'ids' => '9326553104669,9339160002845',
    'fields' => 'id,images,title',
]);

// Create a new product with title "Kerastase Shampoo 150ml"
$result = $shopify->call('POST', 'admin/products.json', [
    'product' => [
        "title"        => "Kerastase Shampoo 150ml",
        "body_html"    => "<strong>Good shampoo for hair!</strong>",
        "vendor"       => "Kerastase",
        "product_type" => "Shampoo",
        "tags"         => 'Shampoo, Kerastase, "Hair Care"',
    ],
]);

use arslanramay\ShopifyPHP\Shopify;

$shopify = new Shopify($data['shop'], [
    'api_key' => '...',
    'secret'  => '...',
]);

use arslanramay\ShopifyPHP\Shopify;

$storedToken = ''; // Retrieve the stored token for the shop in question
$shopify = new Shopify('exampleshop.myshopify.com', $storedToken);

use arslanramay\ShopifyPHP\Shopify;

function make_authorization_attempt($shop, $scopes)
{
    $shopify = new Shopify($shop, [
        'api_key' => '...',
        'secret'  => '...',
    ]);

    $nonce = bin2hex(random_bytes(10));

    // Store a record of the shop attempting to authenticate and the nonce provided
    $storedAttempts = file_get_contents('authattempts.json');
    $storedAttempts = $storedAttempts ? json_decode($storedAttempts) : [];
    $storedAttempts[] = ['shop' => $shop, 'nonce' => $nonce, 'scopes' => $scopes];
    file_put_contents('authattempts.json', json_encode($storedAttempts));

    return $shopify->getAuthorizeUrl($scopes, 'https://example.com/handle/shopify/callback', $nonce);
}

header('Location: ' . make_authorization_attempt('exampleshop.myshopify.com', ['read_product']));
die();

use arslanramay\ShopifyPHP\Shopify;

function check_authorization_attempt()
{
    $data = $_GET;

    $shopify = new Shopify($data['shop'], [
        'api_key' => '...',
        'secret'  => '...',
    ]);

    $storedAttempt = null;
    $attempts = json_decode(file_get_contents('authattempts.json'));
    foreach ($attempts as $attempt) {
        if ($attempt->shop === $data['shop']) {
            $storedAttempt = $attempt;
            break;
        }
    }

    return $shopify->authorizeApplication($storedAttempt->nonce, $data);
}

$response = check_authorization_attempt();
if ($response) {
    // Store the access token for later use
    $response->access_token;
}