用户登录

WooCommerce 提供了输出调试日志的功能,为了使用这个功能更方便,在我们这个支付类里面可以做点设置 .. 先在类里面添加一个静态属性 .. 名字是 $log_enabled .. 再添加一个 $log ..

然后在类的构造方法里面 .. 设置一下 $log_enabled 这个静态属性的值 .. 让它的值等于 $this->debug .. 如果插件打开了调试功能,这个 debug 的值就会是 true,这样 $log_enabled 这个静态属性的值也会是 true ..

下面在这个类里面再去添加一个静态方法 .. 这个方法就是这个类提供的输出调试日志的功能 .. 这个方法有个 $message 参数,表示要输出的日志内容 .. $level 表示日志级别,默认让它等于 info .. 再添加一个 $return ,默认让它等于 false ..

方法里面先要判断一下 .. 检查一下这个类上面的 $log_enabled .. 如果打开了调试功能 ..

再继续判断一下 .. 看看 $log 这个静态属性是不是为空 .. 如果是的话 .. 就去获取到一个 logger 实例 .. 设置一下 self .. log 的值,用一下 wc_get_logger .. 它会返回一个可以输出日志的 logger ..

然后再判断一下方法的 $return 参数的值是不是 true .. 如果是的话 .. 我们需要再处理一下要输出的日志 .. 设置 $message 的值,用一下 wc_print_r .. 处理一下 $message .. 第二个参数设置成 true ..

现在,类里的 $log 上面会是一个 logger 实例 .. 它上面有个 log 方法可以输出日志 .. 先设置一下日志的级别 .. $level .. 接着是要输出的日志 $message ... 一个 array .. 把 source 设置成 wxpay ..

测试

使用这个支付类提供的日志功能可以这样 .. 在这个构造方法里试一下 .. 用一下 WC_Gateway_Wxpay 上面的 log 这个静态方法 ... 把要输出的日志交给这个方法 ..

如果要输出有复杂数据结构的内容,比如一个数组或者一个对象 .. 比如输出当前这个支付实例 .. 第二个参数是日志的级别, 第三个参数要设置成 true ..

回到支付方法类的管理界面 .. 刷新一下 ...

默认 WooCommerce 的日志处理器用的是文件 .. 所以日志信息会存储在文件里 .. 在 wp-content .. uploads 里面,有个 wc-logs .. 在这个目录的下面,找到这个 wxpay 开头的这个日志文件 ..

打开以后你会发现一些日志信息 ... 最上面有一条 info 类型的日志 .. 下面是一条 debug 类型的日志 .. 日志的内容是 WC_Gateway_WxPay 这个类的实例 ..

添加调试日志功能《 电商网站案例:微信支付配置 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点