Symfony2 はSwiftmailerバンドルを使用してメールを送信します。
定期的なニュースレターを作成する観点から、メール送信時間にタイマーを設定する可能性があるかどうかを理解することは興味深い. つまり、今日電子メールを準備し、タイマーを設定して明日送信できるようにします。
Symfony2 でそれを行うにはどうすればよいですか?
Symfony2 はSwiftmailerバンドルを使用してメールを送信します。
定期的なニュースレターを作成する観点から、メール送信時間にタイマーを設定する可能性があるかどうかを理解することは興味深い. つまり、今日電子メールを準備し、タイマーを設定して明日送信できるようにします。
Symfony2 でそれを行うにはどうすればよいですか?
私の頭に浮かぶ最初の解決策は、publishAt
とisPublished
フィールドを使用してニュースレターをデータベースに保存し、 でニュースレターを取得しNOW() >= publishAt AND isPublished = false
、メールで送信し、isPublished
フラグを に設定するコマンドを作成することtrue
です。コマンドは cron によって実行されます。
まず、定期的なメールをスケジュールする標準的な方法がありません。
私が思う最善の方法は、メールキャンペーンをプログラムで管理およびスケジュールできるMailChimpのようなものを使用することです。これには Symfony2 バンドルがあります - MZMailChimpBundle。
MailChimp (または同様のもの) を使用したくない場合は、Elnurによるソリューションが非常に優れています。
または、 mailing queueを使用することもできますが、これはかなり高度なトピックであり、あなたのケースでは余分な作業になります。