【发布时间】:2020-07-27 08:21:51
【问题描述】:
我想隐藏购物车中的优惠券字段。
为此,我将其包装在 Bootstrap 折叠元素中,并将 display:none 添加到现有的优惠券字段中。
编辑:在@gael (WooCommerce: Coupon doens't work in cart if I wrap it in collapse element) 发表评论后,我发现如果我在模板的其他位置显示该表单,它就可以工作。但是现在它不再显示任何成功或错误消息了?!
这是我的代码:
<?php
add_action( 'woocommerce_after_cart_table', 'display_coupon_form_below_proceed_checkout', 50 );
function display_coupon_form_below_proceed_checkout() {
?>
<small><a class="text-muted" data-toggle="collapse" href="#collapseCartCoupon" role="button" aria-expanded="false" aria-controls="collapseCartCoupon"><?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?></a></small>
<form class="woocommerce-coupon-form" action="<?php echo esc_url( wc_get_cart_url() ); ?>" method="post">
<div class="collapse" id="collapseCartCoupon">
<?php if ( wc_coupons_enabled() ) { ?>
<div class="coupon under-proceed">
<input type="text" name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" style="width: 100%" />
<button type="submit" class="button" name="apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>" style="width: 100%"><?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?></button>
</div>
<?php } ?>
</div>
</form>
<style>
.woocommerce table.shop_table .coupon {display: none !important;}
</style>
<?php
}
【问题讨论】:
-
您需要在产品列表下有优惠券表格还是可以将其移动到页面的其他位置?
-
其实我是想把它移到桌子底下
-
奇怪,事实上它在
woocommerce_after_cart_table中不起作用。优惠券代码适用于woocommerce_after_cart_contents,但可折叠显示在购物车表的顶部。还有woocommerce_proceed_to_checkout,但它仍然没有显示在所需的位置。我工作的主题确实为此创建了一个特定的 WooCommercecart.php。如果你愿意,我可以给你 sn-p 作为答案。 -
奇怪。一个 sn-p 会很棒。
-
@gael,你说得对,如果我在模板的其他地方显示它就可以了。但是现在它不再显示任何成功或错误消息了?!
标签: php wordpress woocommerce bootstrap-4 coupon