开发者问题收集

WooCommerce API v3 自定义端点

2016-01-23
11833

我想在 WooCoommerce API v3 中创建一个自定义端点,以便从 eshop 获取一些客户。我知道 API v3 中有一个可用的端点,但它不符合项目的规格。

我检查过这个: https://docs.woothemes.com/document/hooks/ 但没有运气。当我使用此操作时,响应格式为 HTML 和 JSON。

有人能帮我吗?

2个回答

要创建自定义端点(如 wc-api/v3/custom ),您可以查看我的 端点教程

这里的主要步骤是创建一个自定义类并将其返回到 woocommerce_api_classes 过滤器,如下所示:

add_filter( 'woocommerce_api_classes', function( $classes ){
        $classes[] = 'WC_API_Custom';
        return $classes;
    }
);

之后,您可以使用 WC_API_Custom 返回自定义内容。

Karthik
2016-01-25

您可以基于 Wordpress API Init

将新端点添加到插件中的 main file 或主题中的 functions file

function get_custom( $request ) {
    return array( 'custom' => 'Data' , "request"=> $request->get_params() );
}

add_action( 'rest_api_init', function () {
    register_rest_route( 'wc/v3', 'custom', array(
        'methods' => 'GET', // array( 'GET', 'POST', 'PUT', )
        'callback' => 'get_custom',
    ));
});

现在只需使用 curl 调用它即可

curl http://localhost:8080/wp-json/wc/v3/custom\?message=HelloWorld

vanduc1102
2021-03-05