【问题标题】:WooCommerce API: create order and checkoutWooCommerce API:创建订单和结帐
【发布时间】:2016-03-12 21:55:08
【问题描述】:

我想做什么

我想为我的 Woocommerce 网站制作一个原生 Android APP(不是 HTML5/Jquery 手机)。我正在尝试使用 kloon/WooCommerce-REST-API-Client-Library 设置 API。

到目前为止,我设法检索了产品、优惠券、客户、订单等列表……我可以用它们来显示在我的 Android 应用程序中。

现在我想在 android 应用程序中复制添加到购物车/结帐过程,但似乎这个库不提供此类工作流程的功能。

我的问题

如何在我的 Android 应用中使用 REST API 实现以下工作流程? (类似于网站结帐流程)

流程:

  1. 加入购物车

  1. 查看购物车并更新订单

  1. 退房并确认

如果我缺少任何 API 调用,请告诉我。

如果有人已经做到了这一点,请在下面发布您的资源和 cmets。 任何示例代码/图书馆/帮助类链接都将非常受欢迎。

谢谢!

【问题讨论】:

    标签: android wordpress api woocommerce checkout


    【解决方案1】:

    如果您尝试阅读example.php并阅读lib文件夹中的所有php文件,我认为您可以实现所有这些......

    example.php 有类似的东西:

    // orders
    //print_r( $client->orders->get() );
    //print_r( $client->orders->get( $order_id ) );
    //print_r( $client->orders->update_status( $order_id, 'pending' ) );
    

    如果你看一下class-wc-api-client-resource-orders.php,你有这个:

    /**
     * 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();
    }
    

    现在您只需测试所有内容。

    $orderData = array(
        "order" => array(
            "line_items" => array( 
                array(
                    "product_id" => 1, 
                    "quantity" => 1
                ) 
            )
        )
    );
    
    $client->orders->create($orderData);
    

    另一个建议是为什么不改用WooCommerce REST API? 它有很好的文档和示例。

    【讨论】:

    • 感谢雷格尔!我认为使用这样的 PHP 包装器库来实现我需要的功能会更容易。
    【解决方案2】:

    $orderData = 数组( “订单” => 数组(

    /*
    
    "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));
    

    【讨论】:

      猜你喜欢
      • 2014-12-27
      • 2013-04-20
      • 2017-09-22
      • 2021-04-19
      • 2015-02-18
      • 2018-05-07
      • 2020-12-06
      • 2019-08-20
      • 1970-01-01
      相关资源
      最近更新 更多