即使未注册,也会在WooCommerce Thankyou页面上显示客户详细信息

时间:2017-11-16 17:43:08

标签: php wordpress templates woocommerce orders

在WooCommerce中,对于登录用户,Thankyou(订单收到)页面会显示客户详细信息,如姓名,地址和电子邮件,但客户未注册时没有。

如果付款成功完成,我如何确保非注册用户可以在Thankyou(订单收到)页面上看到他们的详细信息,就像注册用户一样?

为什么客户详细信息没有显示在非注册用户的Thankyou(已接收订单)页面上?

1 个答案:

答案 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文件中,或者放在任何插件文件中。

经过测试和工作。

  

可能是因为安全原因而未显示客户信息,因为此信息未受到实际保护的方式与登录时的方式相同用户(注册用户)。