2

私はこのコードをPHPからすべてのサブスクリプションを取得しようとしている:woocommerceサブスクリプションをapiで管理するには?

<?php 
    require __DIR__ . '/vendor/autoload.php'; 
    use Automattic\WooCommerce\Client; 

    $woocommerce = new Client(
      'https://www.magazzinoperfetto.it', // Your store URL 
      'ck_c92b6b6452XXXXXXXXXXXXXXXXXX', 
      'cs_e3380e1c07XXXXXXXXXXXXXXXXXX', 
      [ 
       'wp_api' => true, // Enable the WP REST API integration 
       'version' => 'wc/v2' // WooCommerce WP REST API version 
      ] 
    ); 

    print_r($woocommerce->get('subscriptions'));  
?> 

私はwoocommerce製品などとのAPIを使用する場合...それは、機能的です。

致命的なエラー:キャッチされない例外 'オートマティック\ WooCommerce \ HttpClientを\ HttpClientException' というメッセージと 'エラー:Nessun percorso fornisceウナcorrispondenza TRA L'URL Eルmodalitàディrichiesta [rest_no_route]' しかし、サブスクリプションに、私はこのエラーを受け取ります/var/www/vhosts/magazzinoperfetto.it/httpdocs/vendor/automattic/woocommerce/src/WooCommerce/HttpClient/HttpClient.php:324スタックトレース:#0 /var/www/vhosts/magazzinoperfetto.it/httpdocs/vendor /automattic/woocommerce/src/WooCommerce/HttpClient/HttpClient.php(349):Automattic \ WooCommerce \ HttpClient \ HttpClient-> lookForErrors(配列)#1 /var/www/vhosts/magazzinoperfetto.it/httpdocs/vendor/automattic/ woocommerce/src/WooCommerce/HttpClient/HttpClient.php(385):Automattic \ WooCommerce \ HttpClient \ HttpClient-> processResponse()#2 /var/www/vhosts/magazzinoperfetto.it/httpdocs/vendor/automattic/woocommerce/src/ WooCommerce/Clie #3 /var/www/vhosts/magazzinoperfetto.it/httpdocs/change-sottoscrizione.php(nt.php):Automattic \ WooCommerce \ HttpClient \ HttpClient->リクエスト( 'サブスクリプション'、 'GET'、配列、配列) (22):ライン324

答えて

2

に/var/www/vhosts/magazzinoperfetto.it/httpdocs/vendor/automattic/woocommerce/src/WooCommerce/HttpClient/HttpClient.phpでオートマティック\ WooCommerce \あなたは新しいを作成する必要がありますエンドポイントget_subcriptionのようにして、この関数を使ってコールバック関数を作成すると、getサブスクリプションのコードを記述してコールバック関数から返すことができます。

add_action('rest_api_init', 'custom_api_endpoints'); 
function custom_api_endpoints(){ 
register_rest_route('wc/v2', 'get_subcription', array(
    'methods' => 'POST', 
    'callback' => 'custom_subscription_endpoint_handler', 
)); 
} 
function custom_subscription_endpoint_handler{ 
    return $woocommerce->get('subscriptions'); 
} 
関連する問題