Shopify, как получить данные о продукте, используя php в моем localhost

Я ищу php-скрипт для получения данных о продукте с помощью php на моем локальном сервере. Я уже создал API для витрины магазина, но не знаю, как мы будем вызывать с помощью API-ключа и получать данные.

Я прочитал много документов, которые связаны с тем же, но ничего не исследовать для php. https://help.shopify.com/api/storefront-api/getting-started Если кто-нибудь знает об этом, пожалуйста, помогите мне.

3 ответа

Решение

Вы можете сделать простой запрос для получения подробной информации о продукте, используя shopify admin api

Шаблон запроса

https://{api_key}:{shared_secrete}@shop_url.myshopify.com/admin/products.json

Здесь я использую, Guzzle (PHP HTTP клиент) для создания curl reuqest.

Но вы также можете сделать запрос curl, чтобы сделать вызов API

приведу один пример

 $requestUrl = 'https://'.$username.':'$password.'@'.$shop_domain. '/admin/products.json';

 $request = new \GuzzleHttp\Client();

 $request->request('GET', $requestUrl, [
    'headers' => [
        'Content-Type' => 'application/json',
        'Accept' => 'application/json'
     ]
 ]);

 $products = json_decode($response->getBody());

Итак, здесь вы получите детали продукции в формате JSON

Но помните, что это для частного приложения только для общедоступного приложения, вам нужен токен доступа из shopify API при отправке в обратном вызове после установки приложения в магазине. сохранить его в вашей локальной базе данных. прикрепите этот токен в каждом запросе к API и получите данные

Если вам нужно получить Продукты только с помощью PHP, вы можете просто использовать их Rest API.

Создав приватное приложение, вы получаете похожий URL: https://APIKEY:PASSWORD@STORENAME.myshopify.com/admin/products.json

Где вам нужно будет заменить свой APIKEY, PASSWORD и STORENAME своим собственным.

И с этого момента, если вы знаете PHP, будет очень легко получить ответ JSON с этого URL.

Это все.

Самое простое решение для получения списка продуктов из общедоступного приложения с помощью Guzzle:

      $url = "https://{$shopId}.myshopify.com/admin/api/2021-04/products.json";
$client = new GuzzleHttp/Client();
$headers = [
  'X-Shopify-Access-Token' => $oauthToken,
  'Content-Type' => 'application/json',
];
$response = $client->get($url, ['verify' => false, 'headers' => $headers]);
return (string) $response->getBody();
Другие вопросы по тегам