php - 在 WordPress cronjob 中调用 do_action()
问题描述
我在 WordPress 中编写了一个 cronjob,每 5 分钟执行一次。在 cronjob 的功能中,我试图执行do_action
:
error_log('Send Email');
do_action( 'trigger_new_subscription_notification_email', $dv_id, $new_order->id );
我的问题是现在我可以在 WordPress 的 debug.log 中看到 error_log,但没有发送电子邮件。当我像在 a 中那样手动触发 cronjob 时cronmanager
,我会收到电子邮件。
我还wp_cron
通过 linux 脚本禁用并实现了真正的 cron 调用。
那么是不是不可能do_action
在 WordPress 中做 a 呢?
解决方案
你需要在 do_action 之前调用它:
WC()->mailer();
当你这样做时,它会起作用!
推荐阅读
- c# - 直到下一个间隔的剩余时间不四舍五入
- c++ - 如果在事件仍在执行时再次设置事件,RegisterWaitForSingleObject 是否会并行运行回调?
- twig - Symfony 4自己的表单主题未加载
- java - Eclipse gradle mc 修改错误
- excel - 跨多个类别的动态百分比分析 - PowerPivot / DAX
- android - 项目文件随机加密/损坏?
- java - 在方法中使用 Scanner 类
- python - 如何修复由 Python 中的函数引起的这个无限循环?
- android - 如何根据用户输入从可变资源字符串名称填充微调器?
- java - 覆盖超类中的私有方法-有办法吗?