laravel 4 中的每周电子邮件通讯

Posted

技术标签:

【中文标题】laravel 4 中的每周电子邮件通讯【英文标题】:Weekly email newsletter in laravel 4 【发布时间】:2013-11-30 01:25:21 【问题描述】:

我想从我的 laravel 项目中发送自动生成的每周通讯。我想从控制器中将 laravel 查询的一些结果以时事通讯的形式发送给列表中的所有用户。

此时我可以将邮件发送给单个用户,当他们自己敲一些操作时。现在我想在特定的时间频率(日/周/月)自动生成电子邮件......我还想循环发送这些邮件给数据库中的所有用户。感谢您在这项微小的研究中帮助我:)

【问题讨论】:

应该使用 cronjob。 谢谢你的好意,先生,首先我会去Antonio的解决方案,如果出现问题,我需要你的帮助。因为cronjob似乎更复杂。 :) 他的回复已经在使用cronjobs了。这是它的最后一部分。 好的,朋友,你能不能在网上给我一些可读的内容来更好地了解这个cronjob?紧凑阅读会很棒。谢谢顺便说一句。 由于我自己不知道,所以没有很好的参考可以给你指点,对不起。 【参考方案1】:

创建artisan command:

php artisan command:make SendNewletterCommand

在 app/commands 中,编辑 SendNewletterCommand.php 并:

设置你的命令名称:

protected $name = 'newsletter:send';

创建你的 fire() 方法:

public function fire()

   foreach(User::all() as $user)
   
        Mail::send('emails.newletter', $data, function($message) use ($user)
        
            $message->to($user->email, $user->name)->subject('Welcome!');
        );
   

通过编辑 app/start/artisan.php 并添加以下内容,在 artisan 中注册您的命令:

Artisan::add(new SendNewletterCommand);

并将您的新命令添加到您的 crontab:

0 0 * * sun php /your/project/path/artisan newsletter:send

它会在每周日午夜发送您的电子邮件。

【讨论】:

感谢您的友好回复,先生。我会尝试所有这些,完成后我会将其标记为已回答。与此同时,我可能需要你的帮助才能继续。谢谢谢谢:) 先生,我是 cronjob 的新手。你能给我一些关于它的阅读吗? 使用起来非常简单。基本上你运行sudo crontab -e 来编辑root 的crontab 并添加你的工作,每行一个。这里有一些关于它的好信息:thegeekstuff.com/2009/06/15-practical-crontab-examples. 先生,我是否需要为cornjob 提供任何新软件包,或者我应该从c-panel 设置触发器?我正在使用laravel,是否安装了cornjob?或者整个事情只能使用托管面板开始? 如果你的服务器是基于 Linux 的,你已经安装了 cron。我有 99.9% 的把握。 Cron 是一个 Linux/Unix 服务,没有附加到 PHP 或 Laravel 的任何字符串,它是一个执行定时任务的系统服务。

以上是关于laravel 4 中的每周电子邮件通讯的主要内容,如果未能解决你的问题,请参考以下文章

允许定制内容通讯的服务

图像旁边的时事通讯文本的模板代码 - 与某些电子邮件客户端的兼容性问题

使用 PHP 发送 1and1 到 2k 封不同电子邮件的时事通讯

Laravel 5.4 - 单击电子邮件中的验证链接时未传递或发送电子邮件验证令牌令牌。

Laravel 5 - 电子邮件中的内联 CSS

Laravel 5.4 更改markdown邮件的主题