Woocommerce删除订单上的银行帐号谢谢页面

Mah*_*Dev 5 php wordpress checkout payment-gateway woocommerce

我正在使用woocommerce网站,我启用了直接银行转帐付款方式.我想删除订单感谢页面的帐号,但想要在电子邮件中显示.在两种情况下都调用相同的函数.

如何区分它以仅在电子邮件中显示帐号..不在感谢页面上.我试过它:

global $pagename;
if($pagename == "checkout"){
//remove bank account number
}else{
//show bank account number
}
Run Code Online (Sandbox Code Playgroud)

但它不工作......任何人都可以给我建议......

我也用过这个.

add_action('woocommerce_before_template_part', 'thankyou_bacs');

function thankyou_bacs() {
    /* get bacs payment gateway class */
    $methods = WC()->payment_gateways->payment_gateways();
    $bacs_class = $methods['bacs'];
    unset($bacs_class->account_details[0]['account_name']);
    unset($bacs_class->account_details[0]['account_number']);
}
Run Code Online (Sandbox Code Playgroud)

非常适合结帐页面,但也可以从电子邮件中隐藏这些详细信息.:( :(

Loi*_*tec 5

您可以尝试使用条件is_page('checkout')is_checkout(),首先.

然后,您可以使用remove_action()从结帐页面中删除您的钩子功能...

这样您就不必编辑模板.

----更新----

使用CSS:
您还可以使用CSS隐藏其中一个selectors/的帐号classes.例如,在我的一个电子商务中,这是要定位的css选择器:

  • .woocommerce-checkout ul.order_details.bacs_details
  • .woocommerce-checkout ul.order_details.bacs_details > li.iban
  • .woocommerce-checkout ul.order_details.bacs_details > li.bic

附: display:none;

---- update2 ----

使用带有条件的钩子:

1)内部:

add_action('woocommerce_before_template_part', 'thankyou_bacs');
function thankyou_bacs() {
    if(is_checkout()){
        /* get bacs payment gateway class */
        $methods = WC()->payment_gateways->payment_gateways();
        $bacs_class = $methods['bacs'];
        unset($bacs_class->account_details[0]['account_name']);
        unset($bacs_class->account_details[0]['account_number']);
    }
}
Run Code Online (Sandbox Code Playgroud)

1)欧塞德:

if(is_checkout()){
    add_action('woocommerce_before_template_part', 'thankyou_bacs');
    function thankyou_bacs() {
        /* get bacs payment gateway class */
        $methods = WC()->payment_gateways->payment_gateways();
        $bacs_class = $methods['bacs'];
        unset($bacs_class->account_details[0]['account_name']);
        unset($bacs_class->account_details[0]['account_number']);
    }
}
Run Code Online (Sandbox Code Playgroud)