Woocommerce 回调函数没有被调用

萨米特查克拉博蒂

这是我的代码:

 add_action( 'plugins_loaded', 'mojo_abc_init', 0 );
function mojo_abc_init() {
...

include_once( 'woocommerce-abc.php' );

...
add_filter( 'woocommerce_payment_gateways', 'mojo_add_abc_gateway' );
function mojo_add_abc_gateway( $methods ) {
    $methods[] = 'MOJO_ABC';
    return $methods;
}
...
}

我的 woocommerce-abc.php 文件:

class MOJO_ABC extends WC_Payment_Gateway{
   function __construct() {

       ...

       add_action('woocommerce_api_mojo_abc', array($this, 'check_abc_response'));

      ...
   }

   /* callback function */
   function check_abc_response(){

    /* code */
    wp_die();
   }

}

现在我的问题是我的回调函数没有被调用。网址是http://site_url/wc-api/MOJO_ABC

相反,屏幕仅显示 1,调试日志中没有任何内容也表明代码存在任何问题。

任何帮助将非常感激。谢谢

萨米特查克拉博蒂

通过禁用所有插件,然后将它们与我的插件一一添加并检查 woocommerce 的调试日志,我能够解决该问题。

我发现其他插件之一有一些错误,这就是干扰我的钩子正确注册并因此不被调用的原因。我只禁用了那个插件,它开始像魅力一样工作。我现在已经将这个问题通知了插件开发者。

对于调试,您应该做一些帮助我找到问题的事情:

  1. 在 wp-config.php 文件中启用 wordpress 的调试模式:
    `

    定义('WP_DEBUG',真);定义('WP_DEBUG_LOG',真);// 禁用错误和警告的显示define('WP_DEBUG_DISPLAY', false); @ini_set('display_errors', 0);

`

2.在插件中添加日志功能以在调试文件中写入日志以检查代码流和其他内容:在开始时在构造函数中添加此代码:- `

if (!function_exists('write_log')) {
        function write_log ( $log )  {
          if ( true === WP_DEBUG ) {
            if ( is_array( $log ) || is_object( $log ) ) {
              error_log( print_r( $log, true ) );
            } else {
              error_log( $log );
            }
          }
        }
      }

<br> And write logs bywrite.log("abc") orwrite.log($var)`。

通过这种方式,您可以排除工作流程中出现错误的可能性,并专注于可能导致问题的其他因素。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过自定义回调函数的Woocommerce订单

来自分类Dev

从回调函数中调用其他函数时,“对象没有方法”

来自分类Dev

有没有办法让AJAX调用返回HTML内容和回调函数?

来自分类Dev

从未调用CoreAudio AudioQueue回调函数,没有错误报告

来自分类Dev

反应:谷歌“一键式”回调函数没有被调用

来自分类Dev

Javascript .click() 回调函数显然没有在 Bootstrap 手风琴中调用?

来自分类Dev

如何在 wordpress/woocommerce $tabs 回调函数中传递变量?

来自分类Dev

在Swift中没有从UIView调用ViewController的回调方法

来自分类Dev

即使没有网络,也会调用GooglePlayServicesClient onConnected回调

来自分类Dev

为什么没有调用“数据”事件的回调?

来自分类Dev

为什么我的回调没有被调用?

来自分类Dev

JavaScript:调用获取后没有回调

来自分类Dev

回调函数未调用

来自分类Dev

没有回调的Node.js函数

来自分类Dev

没有对onOptionsMenuClosed()的回调。并覆盖onPanelClosed()函数时出错

来自分类Dev

Node.js中的回调函数没有结果

来自分类Dev

JWPlayer 回调函数没有被执行

来自分类Dev

多次顺序调用带有回调的函数会导致回调地狱

来自分类Dev

多次顺序调用带有回调的函数会导致回调地狱

来自分类Dev

回调函数与从函数内部调用函数

来自分类Dev

删除没有特色图片的woocommerce产品

来自分类Dev

WooCommerce订阅:没有“暂停”按钮

来自分类Dev

Woocommerce没有最近的订单文本

来自分类Dev

从回调函数调用其他函数

来自分类Dev

调用具有默认参数的函数,该函数还具有回调

来自分类Dev

覆盖 WooCommerce 中的挂钩函数

来自分类Dev

Cakephp回调函数被多次调用

来自分类Dev

如何从回调函数调用类变量?

来自分类Dev

平台调用F#回调函数

Related 相关文章

  1. 1

    通过自定义回调函数的Woocommerce订单

  2. 2

    从回调函数中调用其他函数时,“对象没有方法”

  3. 3

    有没有办法让AJAX调用返回HTML内容和回调函数?

  4. 4

    从未调用CoreAudio AudioQueue回调函数,没有错误报告

  5. 5

    反应:谷歌“一键式”回调函数没有被调用

  6. 6

    Javascript .click() 回调函数显然没有在 Bootstrap 手风琴中调用?

  7. 7

    如何在 wordpress/woocommerce $tabs 回调函数中传递变量?

  8. 8

    在Swift中没有从UIView调用ViewController的回调方法

  9. 9

    即使没有网络,也会调用GooglePlayServicesClient onConnected回调

  10. 10

    为什么没有调用“数据”事件的回调?

  11. 11

    为什么我的回调没有被调用?

  12. 12

    JavaScript:调用获取后没有回调

  13. 13

    回调函数未调用

  14. 14

    没有回调的Node.js函数

  15. 15

    没有对onOptionsMenuClosed()的回调。并覆盖onPanelClosed()函数时出错

  16. 16

    Node.js中的回调函数没有结果

  17. 17

    JWPlayer 回调函数没有被执行

  18. 18

    多次顺序调用带有回调的函数会导致回调地狱

  19. 19

    多次顺序调用带有回调的函数会导致回调地狱

  20. 20

    回调函数与从函数内部调用函数

  21. 21

    删除没有特色图片的woocommerce产品

  22. 22

    WooCommerce订阅:没有“暂停”按钮

  23. 23

    Woocommerce没有最近的订单文本

  24. 24

    从回调函数调用其他函数

  25. 25

    调用具有默认参数的函数,该函数还具有回调

  26. 26

    覆盖 WooCommerce 中的挂钩函数

  27. 27

    Cakephp回调函数被多次调用

  28. 28

    如何从回调函数调用类变量?

  29. 29

    平台调用F#回调函数

热门标签

归档