Могу ли я попросить помощи в решении тестового задания для получения работы?
Подался на вакансию WordPress Developer, прислали такое тестовое, как я понимаю вакансии для junior WP Dev. Сроки естестенно прошли, а я задание так и не решил. Сейчас хочу для себя разобраться с данным заданием и с процессом реализации подобных задач. Буду очень признателен за детали и подробности. Предполагаю, что рассмотрение подобной задачи будет интересным и наглядным пособием применения полученных знаний из курса на практике. Спасибо! (в скобочках я оставлял свои комментарии)
***********************************************************************************************
Тестовое задание на должность разработчика WordPress
Поднять сайт на основании WordPress + WooCommerce. (эта задача решена, хоть что-то я знаю)
1. Синхронизация базы товаров с остатками
Синхронизацию базы товаров с остатками необходимо сделать своим независимым плагином, “wpsync-webspark”, который будет обращаться по API посредством GET-запроса:
https://my.api.mockaroo.com/products.json?key=89b23a40
Try with cURL:
curl -H "X-API-Key: 89b23a40" https://my.api.mockaroo.com/products.json
Данный API возвращает JSON-массив товаров, содержащий следующие поля:
sku;
name;
description;
price;
picture;
in_stock.
Обновление товарной базы должно происходить каждый час.
Максимальное кол-во товаров в базе: 10,000.
В случае, если в базе нет определенного sku товара, такой товар нужно создать.
В случае, если sku товара уже существует, необходимо обновить все поля, в которых информация была изменена.
В случае, если какой-либо из товаров не приходит, он недоступен для заказа и должен быть удален с сайта. Однако стоит предусмотреть ситуацию когда API не возвращает результат, чтобы по причине отсутствия соединения не занулить все товары в базе.
2. Отправка информации о заказе
(необязательный)
Во время оформления заказа необходимо отправить через API информацию о том, какие SKU и в каком количестве заказаны. Для этого необходимо вызвать API посредством POST-запроса:
https://my.api.mockaroo.com/order.json?key=89b23a40&__method=POST
Try with cURL:
curl -H "X-API-Key: 89b23a40" -X POST https://my.api.mockaroo.com/order.json
и передавать JSON-массив SKU и количества заказанных товаров в виде:
[
{
"sku": "566fe0cb-9261-41f8-95d2-479cb41497ac",
"items": 1
},
{
"sku": "83878239-bd0f-419c-9ed0-cbbffb288cb6",
"items": 3
}
]
В случае ответа сервера {"s":"accepted"} - заказ считаем успешно оформленным.
В случае ответа сервера {"s":"declined"} - невозможно выполнить заказ по разным причинам. Например, какого-то товара может не быть в наличии.
Если заказ невозможно оформить, физически заказ на стороне WP не должен быть создан, товары в корзине не остаются.
3. Требования к плагину
Плагин должен иметь название “wpsync-webspark”.
Файлы плагина необходимо залить в любой GIT-репозиторий и прислать ссылку, доступную для просмотра.
В плагине должен быть файл readme.md, в котором пошагово расписан порядок разворачивания и запуска плагина, чтобы тех. специалист мог проверить ТЗ.
4. Внимание!
Обязательно! Если что-либо не понятно в постановке задачи, не стесняйтесь спросить, так как правильно понятая задача - залог успеха. Обратное - тоже верно.
На задание отводится 24 часа (одни сутки) с момента выдачи.