【发布时间】:2016-02-07 14:34:14
【问题描述】:
问题可能很奇怪:(
我正在尝试通过 woocommerce 的 结帐页面 中的短代码显示一些有关折扣的信息,并带有 woocommerce_before_checkout_form 挂钩如果我在购物车页面中应用了优惠券并访问结帐注意到挂钩消息显示了正确的折扣值,但是如果我从结帐中删除/添加,则@ 987654322@挂钩中没有显示任何内容,我尝试删除并添加该挂钩,但短代码值仍然没有更新,我测试了很多次以下功能任何人都可以有一些解决想法/建议的工作会很棒
<?php
/*
* Plugin Name: Hook Priority
*
*/
function add_my_shortcode() {
ob_start();
global $woocommerce;
echo $woocommerce->cart->discount_cart;
return ob_get_clean();
}
add_shortcode('my_shortcode', 'add_my_shortcode');
function add_message_in_checkout() {
var_dump(do_shortcode('[my_shortcode]'));
}
add_action('woocommerce_before_checkout_form', 'add_message_in_checkout');
function coupon_removed_function( $coupon_code ) {
remove_all_actions('woocommerce_before_checkout_form');
remove_shortcode('my_shortcode');
do_action('woocommerce_before_checkout_form');
}
add_action("woocommerce_removed_coupon", 'coupon_removed_function');
我尝试使用 javascript 重新加载页面(刷新实例)并且它正在工作,我不想使用那个,除非没有本地 wordpress/php 解决方案需要克服。
echo "<script type='text/javascript'>location.reload();</script>";
目前发生在我身边的是
我从购物车中添加了 10 美元的折扣,然后在结帐时我可以看到 10 美元的价值,但是 如果我从结帐中删除优惠券,它仍然显示 10 美元,但应该是 0 美元。
提前致谢。
【问题讨论】:
-
为什么需要短代码来添加优惠券?你有它应该是什么样子的截图/模型吗?我很难追随你的追求。
标签: php wordpress woocommerce