woocommerce_thankyou被叫4次

时间:2014-01-09 19:22:28

标签: php wordpress woocommerce

我们正在使用woocommerce_thankyou在结帐时执行操作。但是,在一个简单的测试中,如果我设置动作并只是“回声'测试';”它发生了4次。 这是代码

class OrderController 
{ 
    public function __construct() 
    { 
        add_action('woocommerce_thankyou', array($this, 'orderSubmit')); 
    } 

    function orderSubmit() 
    { 
        global $woocommerce;
        echo "test"; // happens 4 times 
    } 
}

1 个答案:

答案 0 :(得分:1)

我今天早些时候遇到了同样的问题。

我进入服务器文件查看器(或本地主机)并转到wp-content / plugins / woocommerce / templates / checkout

在checkout文件夹中有一个名为thankyou.php的php文件。

大约65行左右会有代码

<?php do_action( 'woocommerce_thankyou' . $order->payment_method, $order->id ); ?>

或类似的东西

我的问题是它有2个这样的行动执行。

除了一个之外摆脱所有这些,这应该可以解决你的问题。

请务必在之后测试您的woocommerce,以确保您没有删除错误的