根据用户数据运行发送电子邮件的日常作业

时间:2015-11-08 作者:Justin

快速设置/信息:

用户可以登录到我的网站,并提供一个表单来完成。该表单包含一个类别下拉列表,然后是5个可能的文本字段,其中包含该类别中的任务名称和完成日期。当用户进行更改和保存时,数据会被放置到他们的个人资料中-从Wordpress编辑用户屏幕中,我可以看到类别、任务名称和完成日期。

请求/帮助:

我想每天运行一个流程,查看每个用户配置文件,对于完成日期还有一周的用户,发送一封包含任务名称的电子邮件。

我还想嵌入一个图像和文本,包括链接,在电子邮件中基于类别名称。

非常感谢您的任何帮助或指导,请为我指明如何处理此类问题的方向,我将开始研究!!

非常感谢。

1 个回复
最合适的回答,由SO网友:Tobias Beuving 整理而成

您可以这样做,在伪代码和注释中进行解释。

在函数中创建如下函数。php文件:

/**
 * This function collects the tasks that are due in a week and sends a reminder
 **/
function check_user_tasks_week_before() {
 // query which Completion Dates are in a week
 // loop through the results (if any)
 // and send every user in the result (or every task that is almost due) the email:
  // Send a mail:
  wp_mail( \'[email protected]\', 
   \'Your task should be completed in a week\', 
   \'Hey, the deadline for your task blablabla is due in a week, get going or else!\');
}
(有关how to attach an image see this page at the WordPress 法典。)

schedule the task with wp_cron, 所以它每天都在运行,在文件函数中创建这样的函数。php:

// If the task does not exist yet, it is created here:
if ( ! wp_next_scheduled( \'my_task_hook\' ) ) {
  // you can specify what time() it should run (it is a unix timestamp)
  // in your case \'daily\' would be a good choice:
  wp_schedule_event( time(), \'daily\', \'my_task_hook\' );
}

add_action( \'my_task_hook\', \'check_user_tasks_week_before\' );

相关推荐

Wordpress wp-cron not working

Cron未按预期工作。如果我安排帖子或事件管理器事件,如果在发布时间之后访问站点,则不会发布。如果我去http://somedomain.tld/wp-cron.php?doing_wp_cron 它为空,而调试设置为打开。它应该是空的还是应该显示一些错误(如果有)?错误日志为空。WP Crontrol插件显示cron作业。有没有提示下一步要检查什么?