我需要添加一个自定义文本,如果订单已处理并处于完成状态,则该文本将显示在感谢页上。
我在“woocommerce_order_details_before_order_table”钩子中使用了以下代码,它工作得很完美,但是当我在“woocommerce_thankyou”钩子中使用它时,它产生了错误。
add_action( 'woocommerce_thankyou', 'complete_custom_text' );
function complete_custom_text( $order ) {
$status = $order->get_status();
if(($status === 'completed')){
echo '<p><b>Text (Custom) 5:</b> Perfect.</p>';
}
}
如果有人能帮助我,我将不胜感激。
2条答案
按热度按时间bihw5rsg1#
woocommerce_thankyou钩子将订单ID作为参数传递,而不是订单对象本身。您可以使用wc_get_order函数从订单ID中检索订单对象:
这将允许您使用woocommerce_thankyou钩子在已完成订单的感谢页面上显示自定义文本。
ovfsdjhp2#
您将在该钩子中接收order_id,在阅读状态之前使用
$order = wc_get_order( $order_id );
获取订单。