实际上,付款指示显示在订单已接收页面上:
我想要的是在我的帐户中显示此付款说明>订购视图页。
像这样:
我的问题:如何将付款说明显示在“我的帐户”中>订单查看页面?
我知道它会被发送到客户电子邮件,但如果他们懒得打开电子邮件,他们可以阅读订单详情页面中的说明。
答案 0 :(得分:2)
在我们添加 woocommerce_order_details_after_order_table
挂钩的 woocommerce_thankyou_{$order->get_payment_method()}
操作挂钩中使用自定义挂钩功能,可以完成以下任务:
add_action( 'woocommerce_order_details_after_order_table', 'view_order_custom_payment_instruction', 5, 1); // Email notifications
function view_order_custom_payment_instruction( $order ){
// Only for "on-hold" and "processing" order statuses and on 'view-order' page
if( in_array( $order->get_status(), array( 'on-hold', 'processing' ) ) && is_wc_endpoint_url( 'view-order' ) ){
// The "Payment instructions" will be displayed with that:
do_action( 'woocommerce_thankyou_' . $order->get_payment_method(), $order->get_id() );
}
}
代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中。
经过测试并在WooCommerce 3 +中工作。
答案 1 :(得分:0)
它对我不起作用,我不得不稍微修改代码:
add_action( 'woocommerce_order_details_after_order_table', 'view_order_custom_payment_instruction', 5, 1); // Email notifications
function view_order_custom_payment_instruction( $order ){
// Only for "on-hold" order statuses and on 'view-order' page
if( in_array( $order->get_status(), array( 'on-hold' ) ) && is_wc_endpoint_url( 'view-order' ) ){
WC()->payment_gateways();
// The "Payment instructions" will be displayed with that:
do_action( 'woocommerce_thankyou_' . $order->get_payment_method(), $order->get_id() );
}
}