私は十分に検索しましたが、この質問に対する答えが見つかりませんでしたが、これは単純なものかもしれません。
分析では、購入の目標を設定したいと考えています。商品は5つしかないため、商品を購入するたびに個別の目標を設定します。
Analyticsで購入目標を設定する簡単な方法は、 支給ありがとうございますURL です。さて、Woocommerceのthank you URLには、thank you URLに重要な詳細が以下のように含まれています。
exampledomain.com/?key=wc_order_584a9caad78bc&amt=239.00&cc=USD&charset=windows-1252&cm={"order_id":13586,"order_key":"wc_order_584a9caad78bc"}&st=Completed&tx=2AF5736382483492L
PayPalのお支払いありがとうページが表示されます。
しかし、ユーザーが2checkout、moneris、stripeなどのゲートウェイを使用してサイトで直接購入すると、以下のURLタイプが表示されます。
exampledomain.com/?key=wc_order_5849993d6ec72
あなたが上で見ることができるように、このURLは私が使うべき多くのパラメータを含んでいません。
問題は、これらのURLを編集して商品SKUを含める方法を教えてください。
このように、私はSKUに基づいてフィルタリングすることは簡単になります
フィルタを使用して、woocommerceがゲートウェイに提供するリターンURLを編集できます。
woocommerce_get_return_url
いくつかのゲートウェイプラグインは$ order-> get_checkout_order_received_url()を呼び出すことによって戻りURLを得るために異なるメソッドを使用します。フィルタを適用する
woocommerce_get_checkout_order_received_url
例は次のようになります。
add_filter('woocommerce_get_return_url','override_return_url',10,2);
function override_return_url($return_url,$order){
//create empty array to store url parameters in
$sku_list = array();
// retrive products in order
foreach($order->get_items() as $key => $item)
{
$product = wc_get_product($item['product_id']);
//get sku of each product and insert it in array
$sku_list['product_'.$item['product_id'] . 'sku'] = $product->get_sku();
}
//build query strings out of the SKU array
$url_extension = http_build_query($sku_list);
//append our strings to original url
$modified_url = $return_url.'&'.$url_extension;
return $modified_url;
}
結果のURLは
http://example.com/index.php/checkout/order-received/161/?key=wc_order_585214b2abb65&product_8=SKU1&product_45=SKU2