2015-07-29 4 views
1

Я ищу способ создать собственный веб-интерфейс для просмотра и управления заказами WordPress/WooCommerce.Создание веб-приложения для просмотра и управления заказами в woocommerce

Идея заключается в том, что я не хочу использовать WP-сервер, это для небольшого магазина вынос, который хочет просто иметь возможность просматривать только заказы и принимать их, а затем нажать кнопку, чтобы отметить заказы как завершенные.

У меня есть быстрый взгляд на него, и кажется, что WooCommerce предоставляет API для подключения. Я бы предпочел построить это с помощью PHP и нашел это https://packagist.org/packages/woothemes/woocommerce-api

Это, предположительно, позволяет мне взаимодействовать с woocommerce с помощью PHP. Я просто не уверен, с чего начать. Я думаю, мой вопрос:

Возможно ли это? Он должен просто отображать заказы на веб-странице по мере их поступления (некоторая форма автоматического обновления) и позволять мне отмечать заказы как завершенные или нет.

и как бы начать?

Любая помощь будет оценена по достоинству.

Редактировать: Хорошо, так что, получив быстрый треск, я действительно получил примерную страницу и подключился к моему сайту WooCommerce и отображает заказы.

мне теперь нужно выяснить, как только показать соответствующую информацию, так как это является примером того, хочет он печатает прямо сейчас

stdClass Object ([orders] => Array ([0] => stdClass Object ([id] => 16 [order_number] => 16 [created_at] => 2015-07-29T17:24:00Z [updated_at] => 2015-07-29T17:24:00Z [completed_at] => 2015-07-29T16:24:00Z [status] => processing [currency] => GBP [total] => 0.00 [subtotal] => 0.00 [total_line_items_quantity] => 1 [total_tax] => 0.00 [total_shipping] => 0.00 [cart_tax] => 0.00 [shipping_tax] => 0.00 [total_discount] => 0.00 [shipping_methods] => [payment_details] => stdClass Object ([method_id] => [method_title] => [paid] => 1) [billing_address] => stdClass Object ([first_name] => Chris [last_name] => Last name [company] => [address_1] => number [address_2] => [city] => town [state] => [postcode] => post code [country] => GB [email] => email [phone] => phone #) [shipping_address] => stdClass Object ([first_name] = 

Любая идея, как я могу извлечь на соответствующую информацию. Для того, чтобы получить эти данные я использовал:

print_r($client->orders->get()); 

Извиняюсь за невежество Я новичок в этом формате JSON вещи :)

ИТАК редактировать номер 3 здесь:

Как и прежде, я могу просматривать заказы, используя это:

print_r($client->orders->get()); 

Поэтому я подумал, что, возможно, я мог бы использовать цикл foreach для итерации по массиву. Но это, похоже, не работает.

$orders = $client->orders->get(); 

    foreach ($orders as $key => $value){ 

     echo $key . '=' . $value . '</br>'; 

    } 

Любые идеи?

Хорошо, так что обновите номер 4!

Этот цикл, кажется, работает (МОГ)

foreach($orders as $order) { 
     foreach($order as $value) { 
     echo $value["id"] . '</br>'; 
     echo $value["status"] . '</br>'; 
     echo $value["total"] . '</br>'; 
     } 
    } 

Отдача петлевые этот результат: enter image description here

+0

Да, API WooCommerce позволит вам просматривать заказы. Вы должны начать с [документации API] (http://docs.woothemes.com/document/woocommerce-rest-api/) и вернуться, когда у вас возникнет более конкретная проблема. – helgatheviking

+0

Привет, спасибо за ссылку на документацию. Как вы можете видеть в моем отредактированном комментарии, я теперь подключился к магазину и могу просматривать заказы. Однако я не уверен, как просматривать информацию о конкретном заказе, как только заказы на предметы и электронную почту клиентов. Я могу получить конкретный заказ, используя это: print_r ($ client-> orders-> get (16)); Я думал, что смогу написать что-то вроде этого, например, получить статус заказа: print_r ($ client-> orders-> get (16, 'status')); – chinds

+0

[заказ клиентов] (http://woothemes.github.io/woocommerce-rest-api-docs/#view-customer-orders) и [посмотреть заказ] (http://woothemes.github.io/woocommerce- остальные-API-документы/# вид-ан-заказ). Я еще не получил возможность играть с API, поэтому мне бы хотелось увидеть ваш код, когда вы закончите. – helgatheviking

ответ

1

статус заказа, как представляется, в ответ JSON для view customer orders как status собственности в order объекте ,

Отредактировано, чтобы декодировать ответ json.

$json = $client->orders->get(); 

$orders = json_decode($json); 

foreach($orders->orders as $order){ 
    echo $order->order_number. ' has a status = ' . $order->status. '</br>'; 
} 
+0

Спасибо за ваш ответ К сожалению с этим кодом Я принимаю эту ошибку Попытка получить свойство не объекта в D: \ wamp2 \ www \ woo \ example.php в строке 51. поэтому он не может получить номер заказа или статус заказа. То, что я нашел до сих пор, работает нормально, чтобы петли следующим образом: foreach ($ orders as $ order) { foreach ($ order as $ value) { echo $ value ["id"]. '
'; echo $ value ["status"]. '
'; echo $ value ["total"]. '
'; } } Пожалуйста, обновленный вопрос для этого примера – chinds

+0

Ну, эта ошибка означает, что '$ order' не является объектом. Я ничего не испытал. Я вернулся и снова посмотрел документы API и попробовал «json_decode». Проверьте мои изменения. – helgatheviking

+0

Хммм еще раз спасибо за помощь. однако json-ответ, похоже, вносит массив, а не строку. Предупреждение: json_decode() ожидает, что параметр 1 является строкой, объект указан в Я думаю, что я собираюсь пойти с моим предыдущим примером и попытаться выработать изломы оттуда. Спасибо. – chinds