获取 woocommerce 订单 ID 和像素金额

mor*_*mou 1 php wordpress woocommerce

我一直在尝试在 WordPress 网站上的 woocommerce 中实现结帐页面的“像素”:

<iframe src="//www.euroads.dk/system/showtrackingpixels.php?cpid=XXXX&sid=1&orderid=%orderid%&currencysymbol=DKK&orderamount=%orderamount%" width=1 height=1 marginwidth=0 marginheight=0 ALLOWTRANSPARENCY="true" frameborder=0 scrolling=no hspace=0 vspace=0></iframe>
Run Code Online (Sandbox Code Playgroud)

我希望 %orderid% 获取订单 id,%orderamount% 获取订单总金额。

我尝试用这个替换 %orderid%

<?php echo $order->id ?>
Run Code Online (Sandbox Code Playgroud)

和 %orderamount% 如下:

<?php echo WC()->cart->get_cart_total(); ?>
Run Code Online (Sandbox Code Playgroud)

但它没有给出正确的结果。:(

谁能帮我?

hel*_*ing 5

它必须是感谢页面,因为您在结账时没有分配订单 ID。假设您可以将像素添加到woocommerce_thankyou自动传递$order_id变量的钩子中。

add_action( 'woocommerce_thankyou', 'so_31783715_pixel' );
function so_31783715_pixel( $order_id ){
    $order = wc_get_order( $order_id );
    $order_total = $order->get_total();
    printf( "<iframe src="//www.euroads.dk/system/showtrackingpixels.php?cpid=XXXX&sid=1&orderid=%s%&currencysymbol=DKK&orderamount=%s" width=1 height=1 marginwidth=0 marginheight=0 ALLOWTRANSPARENCY="true" frameborder=0 scrolling=no hspace=0 vspace=0></iframe>", $order_id, $order_total );

}
Run Code Online (Sandbox Code Playgroud)