Woocommerce 在订单感谢页面上删除银行帐号
Woocommerce remove bank account number on order thank you page
我正在使用 woocommerce 网站并且启用了直接银行转帐付款方式。我想删除订单感谢页面的帐号,但想在电子邮件中显示。两种情况下都调用相同的函数。
我怎样才能区分它只在电子邮件中显示帐号..而不是在感谢页面上。我已经试过了:
global $pagename;
if($pagename == "checkout"){
//remove bank account number
}else{
//show bank account number
}
但是它不起作用..任何人都可以给我建议...
我也用过这个
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']);
}
结帐页面效果很好,但也从电子邮件中隐藏了这些详细信息。 :( :(
在您的 Woocommerce 插件文件夹中查找默认模板:
\wp-content\plugins\woocommerce\templates\
然后在您的 Wordpress 主题下创建一个名为 'woocommerce' 的新文件夹:
\wp-content\themes\(your theme name)\woocommerce\
保持与模板下相同的文件夹结构,复制所有 files/folders 或仅复制您要修改的文件夹。您现在可以在您的主题下编辑副本,这些应该被插件自动检测为现在被覆盖。在 Woocommerce > 系统状态下检查以确保其正常工作。
致谢页面位于:
\woocommerce\checkout\thankyou.php
只需从那里删除付款方式显示。
邮件也有自己的文件夹,如果需要可以修改。
更多详情:
https://docs.woothemes.com/document/template-structure/
您可以先尝试使用条件 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;
----更新2----
有条件地使用你的钩子:
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']);
}
}
2).外面:
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']);
}
}
通过自定义,附加 CSS 添加:
.woocommerce-bacs-bank-details {
display: none;
}
如果您在定制器中使用实时结帐页面执行此操作,您可以看到效果。
我正在使用 woocommerce 网站并且启用了直接银行转帐付款方式。我想删除订单感谢页面的帐号,但想在电子邮件中显示。两种情况下都调用相同的函数。
我怎样才能区分它只在电子邮件中显示帐号..而不是在感谢页面上。我已经试过了:
global $pagename;
if($pagename == "checkout"){
//remove bank account number
}else{
//show bank account number
}
但是它不起作用..任何人都可以给我建议...
我也用过这个
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']);
}
结帐页面效果很好,但也从电子邮件中隐藏了这些详细信息。 :( :(
在您的 Woocommerce 插件文件夹中查找默认模板:
\wp-content\plugins\woocommerce\templates\
然后在您的 Wordpress 主题下创建一个名为 'woocommerce' 的新文件夹:
\wp-content\themes\(your theme name)\woocommerce\
保持与模板下相同的文件夹结构,复制所有 files/folders 或仅复制您要修改的文件夹。您现在可以在您的主题下编辑副本,这些应该被插件自动检测为现在被覆盖。在 Woocommerce > 系统状态下检查以确保其正常工作。
致谢页面位于:
\woocommerce\checkout\thankyou.php
只需从那里删除付款方式显示。
邮件也有自己的文件夹,如果需要可以修改。
更多详情: https://docs.woothemes.com/document/template-structure/
您可以先尝试使用条件 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;
----更新2----
有条件地使用你的钩子:
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']);
}
}
2).外面:
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']);
}
}
通过自定义,附加 CSS 添加:
.woocommerce-bacs-bank-details {
display: none;
}
如果您在定制器中使用实时结帐页面执行此操作,您可以看到效果。