Управление интернет-магазином — дело дорогостоящее, и владельцам таких ресурсов часто приходится выполнять множество задач вручную. WooCommerce REST API упрощает этот процесс. Он позволяет контролировать платформы онлайн-торговли, управлять и масштабировать проекты ВуКомерс программным способом.
Интеграция, автоматизация и расширение возможностей интернет-магазина — все это легко осуществимо с помощью WooCommerce REST API. Вы экономите ресурсы и время, которые можно использовать для дальнейшей оптимизации процессов. Это также позволит кастомизировать дизайн и функциональность интернет-магазина с помощью гибких внешних приложений.
Данная статья дает полное представление о WooCommerce REST API, предоставляя возможность программно автоматизировать и улучшать операции онлайн-продаж. Она содержит практические сведения, примеры использования и код для облегчения беспрепятственной интеграции и кастомизации интернет-магазинов ВуКомерс.
- Предварительные условия
- Генерация учетных данных API в WooCommerce
- Понимание архитектуры REST API WooCommerce
- Получение списка товаров
- Управление товарами через REST API
- Добавление товара с помощью API WooCommerce
- Редактирование продукта с помощью WooCommerce API
- Управление заказами с помощью REST API
- Получение последних заказов с помощью API WooCommerce
- Обновление статуса заказа
- Управление и привлечение клиентов
- Добавить клиента с помощью API WooCommerce
- Получение клиента по идентификатору с помощью WooCommerce API
- Дополнительные возможности использования WooCommerce REST API
- Заключение
Предварительные условия
Чтобы начать работу с WooCommerce REST API, вы должны использовать:
- ВуКомерс версии 3.5 или выше.
- WordPress версии 4.4 или выше.
- Postman или Insomnia для тестирования и взаимодействия с АПИ.
Хотя поддерживается доступ к API по HTTP или HTTPS, в целях безопасности настоятельно рекомендуется использовать HTTPS.
Генерация учетных данных API в WooCommerce
Чтобы сгенерировать учетные данные API в WC, выполните следующие действия:
- Перейдите на дашборд ВордПресс. Далее выберите «Плагины > Установленные» на сайдбаре и активируйте расширение ВуКомерс.
- После нажмите «WooCommerce > Настройки». Затем перейдите на вкладку «Расширенные», чтобы открыть страницу дополнительных настроек WC.
- Далее выберите REST API.
- Нажмите кнопку «Создать ключ АПИ» или «Добавить ключ», чтобы сгенерировать его.
- Далее будет предложено ввести данные ключа. Это описание, пользователь и разрешения. Введите детали ключа. Измените пользователя, если требуется, и выберите «Чтение/Запись» для разрешений.
- Нажмите кнопку «Сгенерировать ключ API». С помощью них вы сможете программно получать доступ к данным интернет-магазина и управлять ими. Запомните ключ и секрет пользователя. В следующем разделе вы будете использовать их для выполнения API-запросов.
Понимание архитектуры REST API WooCommerce
API WooCommerce построен на архитектуре REST. Это позволяет вам читать и выполнять операции записи данных ВуКомерс, таких как заказы, товары и клиенты, отправляя запросы соответствующими методами (GET, POST, PUT, DELETE) на конечную точку. Она состоит из способов запроса и стандартного URL. С помощью конечной точки можно использовать выбранный инструмент (Postman или Insomnia) для доступа к различным хранимым данным.
Получение списка товаров
Прежде чем получить список товаров, убедитесь, что добавили несколько продуктов в интернет-магазин. Вы должны изменить структуру пермалинка на что-то отличное от Plain.
Нажмите «Настройки > Постоянные ссылки» на сайдбаре. Далее поменяйте структуру ссылок. Если не внесете это изменение, стандартная конечная точка URL будет работать не так, как должна. Нажмите кнопку «Сохранить изменения».
Затем откройте Postman и добавьте новый запрос. В разделе URL используйте https:///wp-json/wc/v3/products. Убедитесь, что заменили <yourdomain> на домен вашего сайта WooCommerce.
На вкладке входа выберите Basic Auth и введите ключ пользователя в качестве имени и секрет, как пароль. Вы должны добавлять эту авторизацию к каждому запросу, который делаете к WooCommerce REST API. Отправьте его. Далее вы должны получить список всех товаров в интернет-магазине.
Управление товарами через REST API
Объект товара имеет список атрибутов. Они позволяют легко группировать продукты, управлять запасами и устанавливать цены — и все это программно.
Допустим, вы хотите добавить новый товар в созданную группу. Все, что нужно, это идентификатор в атрибуте grouped_products.
Для управления запасами используйте manage_stock и stock_status, которые устанавливаются в true или false, а также в instock, onbackorder и outofstock соответственно.
Давайте рассмотрим, как можно добавить и обновить существующую деталь продукта.
Добавление товара с помощью API WooCommerce
- В Postman добавьте новый запрос и измените метод на POST. Повторно примените URL конечной точки, использованный в предыдущем разделе. Перейдите на вкладку Body , выберите raw и JSON в качестве формата тела. В полезной нагрузке JSON содержатся название продукта, его тип (простой, переменный или сгруппированный), детали и краткое описание. В нем также есть категории, теги и изображения, которые можно добавить по мере необходимости.
{ "name": "iPhone 15 Pro Max", "type": "simple", "description": "", "short_description": "", "categories": [], "tags": [], "images": [] }
- Выполните запрос. Если продукт успешно создан, в ответ вы должны получить объект товара. Обратите внимание на его идентификатор, так как он понадобится в следующем разделе.
Редактирование продукта с помощью WooCommerce API
Давайте отредактируем только что созданную запись.
- На вкладке «Body» добавьте это JSON-тело:
{ "name": "iPhone 15 Pro" }
Поскольку вы обновляете только поле имени, не нужно включать другие атрибуты. В данном случае измените его на «iPhone 15 Pro». URL конечной точки должен иметь вид https://yourdomain/wp-json/wc/v3/products/.
- Замените id на ID продукта, который создали в предыдущем разделе. Не забудьте изменить метод запроса на PUT. Выполните его. В ответ вы должны получить объект продукта. Можете проверить название в ответе, чтобы убедиться в его успешном обновлении.
Управление заказами с помощью REST API
WooCommerce REST API облегчает автоматизацию обработки заказов. Он позволяет беспрепятственно получать их и обновлять статусы. Также он дает возможность программно принимать заказы, фильтровать их по различным критериям, таким как дата, статус или клиент, а затем эффективно обрабатывать.
Это включает обновление статусов заказов для отражения этапов выполнения. REST API WooCommerce обеспечивает точное отслеживание и связь с клиентами.
Через АПИ можно управлять возвратами, включая обработку запросов, автоматический процесс и обновление статусов после них.
Давайте рассмотрим, как получить информацию о последних заказах и изменить их состояние до «завершен».
Получение последних заказов с помощью API WooCommerce
- В Postman добавьте новый запрос на получение заказов с помощью GET. URL конечной точки должен быть следующим:
https:///wp-json/wc/v3/orders - На вкладке Params введите ключ after и значение даты, после которой были созданы заказы. В данном случае применяется 2024-03-08T00:00:00. Не стесняйтесь изменять ее по своему усмотрению. Это позволит отфильтровать заказы только по тем, которые были созданы после указанной даты. Остальные настройки Postman оставьте по умолчанию.
- Убедитесь, что сделали несколько заказов в своем интернет-магазине WC. Это позволит избежать возвращения пустого списка. Выполните запрос. Вы получите список всех заказов, сделанных в интернет-магазине и соответствующих заданным критериям.
Обновление статуса заказа
Чтобы обновить статус, возьмите идентификатор уже сделанного заказа. Добавьте новый запрос в Postman и измените его на PUT. Используйте данную конечную точку для обновления: https://yourdomain/wp-json/wc/v3/orders/. На вкладке Body добавьте это JSON-тело:
{ "status": "completed" }
Выполните запрос. Вы должны получить ответ, в котором заказ будет отмечен как завершенный.
Управление и привлечение клиентов
С помощью WooCommerce REST API компании могут эффективно создавать новые профили клиентов, редактировать данные о существующих покупателях и получать полную информацию, например, историю покупок и предпочтения.
Анализируя эти сведения, возможно разрабатывать персонализированные маркетинговые стратегии, предлагая целевые рекламные акции, рекомендации по товарам и вознаграждения за лояльность на основе индивидуального поведения.
Такой уровень управления данными о клиентах позволяет компаниям строить более прочные отношения с ними, повышать удовлетворенность и стимулировать повторные покупки.
Добавить клиента с помощью API WooCommerce
- Отправьте POST-запрос на эту конечную точку URL: https:///wp-json/wc/v3/customers. Не забудьте включить авторизацию, как делали ранее.
- На вкладке «Body» используйте этот JSON-объект для создания клиента:
{ "email": "[email protected]", "first_name": "Brian", "last_name": "Abraham", "role": "customer", "username": "briann.abraham", "billing": { "first_name": "Brian", "last_name": "Abraham", "company": "", "address_1": "969 Market", "address_2": "", "city": "San Francisco", "state": "CA", "postcode": "94103", "country": "US", "email": "[email protected]", "phone": "(555) 555-5555" }, "shipping": { "first_name": "Brian", "last_name": "Abraham", "company": "", "address_1": "969 Market", "address_2": "", "city": "San Francisco", "state": "CA", "postcode": "94103", "country": "US" } }
Объект JSON содержит основные сведения о клиенте, такие как электронная почта, имя, роль и логин. Он также имеет информацию о выставлении счета и доставке, включая адрес, местоположение и номер телефона.
- Выполните запрос. Вы должны получить ответ, содержащий объект customer. Запомните его идентификатор, который будете использовать в следующем разделе для извлечения клиента.
Получение клиента по идентификатору с помощью WooCommerce API
Давайте получим только что созданного пользователя по его ID.
- Создайте новый запрос с методом GET .
- Используйте тот же URL конечной точки, https:///wp-json/wc/v3/customers/ и добавьте ID клиента, которыйт хотите получить.
Дополнительные возможности использования WooCommerce REST API
Помимо управления ресурсами интернет-магазина, вы можете использовать WooCommerce REST API для решения других сложных задач. Например интеграции с CRM, автоматизации управления запасами, пользовательской аналитики и отчетности.
Встраивание интернет-магазина WC в выбранную платформу с помощью РЕСТ АПИ гарантирует, что при добавлении клиента он будет мгновенно отражен на дашборде как лид. Это позволяет легко работать с синхронизацией информации о покупателях и истории заказов.
REST API дает возможность автоматизировать управление запасами. Интегрировав внешний контроль, можно в режиме реального времени получать информацию о наличии товара на складе. Это относится к пользовательским отчетам и аналитике.
С помощью ВуКомерс REST API вы можете создавать сводки, которые дадут возможность лучше видеть ситуацию. Это поможет в принятии решений, выявлении тенденций и прогнозировании.
Вот фрагмент кода для синхронизации данных о клиентах WooCommerce с CRM-платформой:
<?php
require __DIR__ . '/vendor/autoload.php';
use Automattic\WooCommerce\Client;
$woocommerce = new Client(
'https://', // Your store URL
'consumer_key', // Your consumer key
'consumer_secret', // Your consumer secret
[
'version' => 'wc/v3' // WooCommerce WP REST API version
]
);
// CRM API endpoint and key
$crm_api_url = 'https://your-crm-api-url/api';
$crm_api_key = 'YOUR_CRM_API_KEY';
try {
// Fetch customers from WooCommerce store
$customers = $woocommerce->get('customers');
// Initialize cURL
$ch = curl_init();
// Check if cURL initialization succeeded
if ($ch === false) {
throw new Exception('Failed to initialize cURL');
}
foreach ($customers as $customer) {
$crm_customer_data = [
'first_name' => $customer->first_name,
'last_name' => $customer->last_name,
'email' => $customer->email,
// Other fields
];
// cURL options
curl_setopt($ch, CURLOPT_URL, $crm_api_url . '/customers');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($crm_customer_data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $crm_api_key,
'Content-Type: application/json',
]);
// Execute cURL request
$crm_response = curl_exec($ch);
// Check for cURL errors
if ($crm_response === false) {
throw new Exception('cURL error: ' . curl_error($ch));
}
// Check HTTP status code
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($http_code !== 200) {
throw new Exception('Failed to sync customer data with CRM: ' . $http_code);
}
echo 'Customer data synced with CRM successfully.';
}
curl_close($ch);
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
Это фрагмент PHP-кода, который сначала устанавливает соединение с WooCommerce REST API, а затем извлекает клиентов из интернет-магазина WC. Наконец, он отправляет их в CRM с помощью URL. Код включает обработку ошибок для управления сбоями потока. Он использует библиотеку PHP под названием automattic/woocommerce, которую можно установить с помощью Composer.
CRM применяется здесь в демонстрационных целях, чтобы показать общий подход к синхронизации данных о клиентах с любой платформой.
Заключение
WooCommerce REST API позволяет программно управлять данными интернет-магазина, повышать онлайн-продажи и расширять функциональность вашего проекта. Этот мощный инструмент превращает базовую установку WordPress в более сложную платформу.
Чтобы начать работу, установите плагин ВуКомерс в ВордПресс и изучите REST API, используя примеры, приведенные в этом руководстве. Они послужат основой для ваших собственных решений.