在WooCommerce中,对于登录用户,Thankyou(订单收到)页面会显示客户详细信息,如姓名,地址和电子邮件,但客户未注册时没有。
如果付款成功完成,我如何确保非注册用户可以在Thankyou(订单收到)页面上看到他们的详细信息,就像注册用户一样?
为什么客户详细信息没有显示在非注册用户的Thankyou(已接收订单)页面上?
答案 0 :(得分:2)
您可以使用以下代码更改未记录用户的此行为:
add_action( 'woocommerce_thankyou', 'adding_customers_details_to_thankyou', 10, 1 );
function adding_customers_details_to_thankyou( $order_id ) {
// Only for non logged in users
if ( ! $order_id || is_user_logged_in() ) return;
$order = wc_get_order($order_id); // Get an instance of the WC_Order object
wc_get_template( 'order/order-details-customer.php', array('order' => $order ));
}
代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中。
经过测试和工作。
可能是因为安全原因而未显示客户信息,因为此信息未受到实际保护的方式与登录时的方式相同用户(注册用户)。