【发布时间】:2020-10-28 23:17:38
【问题描述】:
在 WooCommerce 中,我正在尝试创建一个包含产品和结帐的单页登录页面。
加载页面后,我希望购物车清空。 但我希望能够添加到购物车,并在同一页面上结帐。
我只想在具有特定页面模板的页面上实现这一点。
我正在使用 Clear Woocommerce Cart on Page Load Even for logged in users 回答代码。
这就是我所拥有的:
?>
<?php
//epmty cart
if (! WC()->cart->is_empty() ) {
WC()->cart->empty_cart( true );
}
<?php
// show add to cart button
echo do_shortcode( '[add_to_cart id='22']');
?>
// allow checkout Even though Cart Is Empty
add_filter( 'woocommerce_checkout_redirect_empty_cart', '__return_false' );
add_filter( 'woocommerce_checkout_update_order_review_expired', '__return_false' );
?>
<?php
echo do_shortcode( '[woocommerce_checkout' );
?>
我认为问题是页面在添加到购物车时刷新,因此再次清空购物车。如何让它只运行一次?或者有没有更好的方法来清理购物车?
【问题讨论】:
-
是的,已启用
-
我还没有找到限制自定义模板页面的方法……
-
代码会直接在模板中工作吗?
-
更新了我的答案……你可以试试或者用我的新答案……我希望它会起作用。
标签: php wordpress woocommerce product cart