修改WooCommerce管理员新订单邮件取消链接跳转至账户仪表盘
解决WooCommerce订单取消链接跳转至账户仪表盘的问题
你当前使用$order->get_cancel_order_url_raw()生成的取消链接,默认会在订单取消后跳转至网站首页。要改成跳转至用户账户仪表盘,只需要给这个方法传入指定的跳转地址参数即可。
修改后的代码
// 获取账户仪表盘的URL $account_redirect_url = wc_get_page_permalink('myaccount'); // 生成带自定义跳转地址的取消订单URL $cancel_url = $order->get_cancel_order_url_raw($account_redirect_url); echo wp_kses_post( sprintf( __( 'Your ride will only be secured once you have finalised the payment.<br> <br> %s', 'woocommerce-bookings' ), '<a href="' . esc_url($cancel_url) . '">Cancel my booking</a>' ) );
关键说明
wc_get_page_permalink('myaccount')会自动获取WooCommerce后台配置的「我的账户」页面永久链接,默认指向账户仪表盘。- 如果需要跳转至账户内的特定页面(比如订单列表),可以替换为
wc_get_account_endpoint_url('orders')。 - 新增
esc_url()对生成的链接进行转义,符合WordPress安全编码规范,避免XSS风险。
内容的提问来源于stack exchange,提问作者designmode
相关产品推荐
相关产品推荐

