当有人购买课程或订单成功完成时,我需要立即执行一个功能。我试图执行的函数实际上称为 API。我没有从 LearnPress 中看到合适的 Hook。
当我使用“user_register”(当有人注册这个钩子触发时)钩子时它工作得很好,但是当我使用 LearnPress 给出的这个“learn_press_confirm_order”钩子时它不起作用。
你们知道有什么合适的方法可以遵循并实现这一目标。感谢您的时间
当有人购买课程或订单成功完成时,我需要立即执行一个功能。我试图执行的函数实际上称为 API。我没有从 LearnPress 中看到合适的 Hook。
当我使用“user_register”(当有人注册这个钩子触发时)钩子时它工作得很好,但是当我使用 LearnPress 给出的这个“learn_press_confirm_order”钩子时它不起作用。
你们知道有什么合适的方法可以遵循并实现这一目标。感谢您的时间
首先,您的 Lime API 密钥应该被视为密码 - 不要在网络上共享它!立即转到您的 LimeLM 帐户,选择“设置”,然后选择“生成新密钥”。我会等 :)
你的代码没有明显的问题,所以我会像这样调试它:
紧跟die('setup');
在add_action
. 我们要确定这个文件实际上是被调用的。如果是,请删除die
.
Wordpress 和 LearnPress 非常棒,因为您已经获得了源代码。转到wp-content/plugins/learnpress
并输入(在 Linux 或 *nix 上)
grep -R "learn_press_confirm_order" .
这将向您显示引用此操作的所有文件。只有一个:
./templates/order/confirm.php : transaction_method, $order->get_id() ); ?>
所以拉起一个编辑器并编辑wp-content/plugins/learnpress/templates/order/confirm.php
. 您需要确定:
订购时文件是否正在运行。(die
在顶部使用,或者error_log
如果您可以看到您的 webserver/php 日志文件。)
在这一点上,我相当肯定您会发现错误,但由于某种原因,您可能会访问此页面,但未调用该操作。因此,您可能需要在此confirm.php
页面上计算出确切的控制流程。再次,die
或error_log
。
您可以对 learnpress 的代码进行实时更改,以帮助您调试它。大多数人都害怕挖掘别人的代码,但这就是开源的巨大力量。完成后,您可以重新安装 learnpress。
期待听到它的进展:)