可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
WHAT AM I TRYING TO DO
I want to make a Native Android APP (Not HTML5/Jquery mobile) for my Woocommerce website. I am trying to setup the APIs using kloon/WooCommerce-REST-API-Client-Library.
So far I managed to retrieve the lists of products, coupons, customers, orders etc... which I could use to display in my Android app.
Now I want to replicate add to cart/checkout process in the android app, but it seems this library dosen't provide functions for such workflow.
MY QUESTION
How can I achieve the follwing workflow with REST APIs in my Android app? (Similar to the website checkout process)
Flow:
- Add to cart

- View cart and update order

- Check out and confirmation

Please tell me if I'm missing any API calls.
If someone already achieved this, kindly post your resources and comments bellow. Any sample-codes/liraries/helper-classes links will be greatly appriciated.
Thank you!
回答1:
if you try to read the example.php and read all the php file in lib folder, I think you can achieve all these...
example.php has something like:
// orders //print_r( $client->orders->get() ); //print_r( $client->orders->get( $order_id ) ); //print_r( $client->orders->update_status( $order_id, 'pending' ) );
and if you'll look at class-wc-api-client-resource-orders.php, you have this:
/** * Create an order * * POST /orders * * @since 2.0 * @param array $data valid order data * @return array|object your newly-created order */ public function create( $data ) { $this->set_request_args( array( 'method' => 'POST', 'body' => $data, ) ); return $this->do_request(); }
now you'll just have to test everything.
$orderData = array( "order" => array( "line_items" => array( array( "product_id" => 1, "quantity" => 1 ) ) ) ); $client->orders->create($orderData);
Another suggestion is why not use WooCommerce REST API instead? It has great documentation and examples.
回答2:
$orderData = array( "order" => array(
/* "set_paid"=>true */ "status"=>"processing", "payment_details"=>array("method_id"=>"cod","method_title"=>"Cash on Delivery"), "billing_address"=>array("first_name"=>"Tumusime","last_name"=>"Deus","company"=>"mcash", "city"=>"Kampala","address_1"=>"Plot 7 Mukalazi zone","email"=>"jones@mcash.ug","phone"=>"0784529043", ), "shipping_address"=>array("first_name"=>"Tumusime","last_name"=>"Deus","company"=>"mcash", "city"=>"Kampala","address_1"=>"Plot 7 Mukalazi zone","email"=>"jones@mcash.ug","phone"=>"0784529043", ), "shipping_lines"=>array( array("id"=>5,"method_id"=>"flat_rate:1", "method_title"=>"Flat rate","total"=>"10000.00") ), "line_items" => array( array( "product_id" => 10, "quantity" => 1, ) , array( "product_id" => 15, "quantity" => 2, ) ) )
);
//$client->orders->create($orderData); print_r($client->orders->create($orderData));