LaravelとMailChimp連携方法:ユーザーにメルマガ・ニュースレターを手軽に配信する

LaravelとMailChimp

LaravelはMailChimpというメール配信システムと連携させて、メルマガ・ニュースレターを送信できます。

次のような流れを、手軽に作ることができます。

  1. Laravel上でフォームを通じて、ユーザー登録してもらう
  2. Laravelのデータベースにユーザー情報を登録する
  3. 同時にMailChimpにもユーザー情報を登録する
  4. MailChimpを通じて、ユーザーにニュースレターなどを配信する

MailChimpは日本語版がないので、英語が苦手な方は、ちょっと使いにくいかもしれません。

英語に抵抗がなければ、おすすめしたいツール。

非常に便利で、コスパが良く(無料版もあります♪)、世界的に有名なメール配信システムです。

今回は、MailChimpとLaravelの基本的な連携方法を解説していきます。

LaravelとMailChimp連携方法:ユーザーにメルマガ・ニュースレターを手軽に配信する

Laravelのプロジェクトが既にあり、MailChimpでアカウントを作成してあるという想定で、説明を進めていきます。

もしまだMailChimpアカウントをお持ちでない場合には、下記のMailChimpのサイトから、アカウントを作成してください。

Laravelでのプロジェクトの作成方法は、下記の記事で解説しています。

アカウント作成後、Laravelのプロジェクト上で、下記の設定を進めていきます。

①ライブラリをインストール

laravel-newsletterというライブラリを使います。

まずは、ライブラリをインストールします。

②設定ファイル作成

③設定ファイルの確認

②で作成したファイルを確認します

config/newsletter.phpを開きます。

設定ファイルに  'apiKey' => env('MAILCHIMP_APIKEY'),'id' => env('MAILCHIMP_LIST_ID'), があります。

この2つは、.envファイルに設定しておく必要があります。

設定方法は次のとおり。

MAILCHIMP_APIKEYの設定

MAILCHIMPにログイン後、左下をクリックし、accountを選択

さらにExtrasより、API keysを選択。API作成画面が表示するので【create A key】を選択して、新たにAPIキーを作成します。

APIキーが表示されるので、これをコピー。

.envファイルの MAILCHIMP_APIKEY=の後に貼り付けます。

MAILCHIMP_LIST_IDの設定

MAILCHIMPログイン後、Audienceクリック。

プルダウンからSettingを選択。

Audience name and defaultsを選択。

Audience IDをコピーします。

.envファイルの MAILCHIMP_LIST_ID=の後に貼り付けます。

SSLをFALSEに変更

開発環境の場合には、config/newsletter.phpの設定が  'ssl' =>true, だと、別途 ssl用の設定をしておかなければ、登録できません。

開発環境の場合は、 'ssl' =>false, にして、試してみてください。

④Laravelのコントローラーを作成

コントローラーを作成します。

次のようにいれておきます。

⑤Laravelのルート設定を追加

次の2つのルート設定を、routes/web.phpに追加します。

⑥Laravelのビューでフォームを作成

次に、Laravelのビューでフォームを作成します。

resources/viewsに newsletter.blade.phpファイルを作ります。

次のようなシンプルなフォームをいれておきます。

*bootstrapを使ってフォームのデザインをしています。

⑦テストをする

フォームにメールアドレスを入力して、実際に登録できるかテストしてみてください。

/newsletterを開くと、次のようなシンプルなフォームが表示されます。

*もしbootstrapを入れていない場合には、見た目は変わります。

実際にメールアドレスを登録すると、MailChimpのコンタクトにも、メールアドレスが追加されています。

コンタクトを確認するには、MailChimpにログイン後、Audienceメニューから、All contactsを選択してください。

うまくいかない場合

下記コマンドで設定ファイルのキャッシュをクリアしてみてください。

開発環境の場合は、newsletter.phpファイルのSSLが ‘true’ となっていないか、チェックしてみてください。

さいごに

なお、Laravel側でもユーザー情報を保存したい場合には、Newscontrollerのstoreメソッドに、データベースにも保存する処理を書いておく必要があります。

この部分は、通常通りでOKです。

今回はここは省略しますが、もしご要望などあれば、記事を追加していきますね。

じゅんこ
じゅんこ

LaravelとMailChimp連携は、また色々と使ってみて、記事にしていきたいと思います。

MailChimpの登録はこちらをクリックしてください。

ページの真ん中あたりに【Sign Up Free】という青緑色のボタンが表示されます。そちらから無料版の登録が可能です。

LaravelとMailChimp

【Laravelの教科書・プレゼント】

Junko
Laravelの使い方を覚えたい!と思ったら、ぜひ、役立ててほしいです。 基礎編は無料でプレゼント中です♪
ひつじプログラマ
会員制サイトをいちから作っていくよ。ボタンをクリックして詳細を見てね。
Laravelの教科書の詳細を見る

最新のLaravel10版テキストに加え、Laravel8版・Laravel9版もご用意しています♪

【無料プレゼント】

「LaravelでWebアプリをいちから作れるようになりたい!」

そんなLaravel初心者のあなたへ【Laravelの教科書】基礎編プレゼント中! 会員制フォーラムサイトを学習しながら作れます。

詳細はこちらをクリック

最新のLaravel10版テキストに加え、Laravel8版・Laravel9版もご用意しています♪

Laravelの本を書きました。


ひつじが目印♪
クリックするとamazonページへ。

Laravelの使い方を分かりやすく解説した書籍を出版しました。書店やAmazon等のオンラインショップにて販売中です。
Laravel10対応。Laravel11サポートガイドもご用意しています。詳しくは下記ボタンをクリック♪

書籍の詳細を見てみる

Laravelの本を書きました。


ひつじが目印♪
クリックするとamazonページへ。

Laravel10対応

Laravelの使い方を分かりやすく解説した書籍を出版しました。書店やAmazon等のオンラインショップにて販売中です。

書籍の詳細を見てみる

 

Laravelの教科書限定コミュニティ【Laravelの教科書ラボ】はじめました。
デプロイ講座付。StripeやChatGPT連携など過去10回分のセミナー動画視聴可能。

Laravel実践スキルをのばしたい方におすすめです。

ラボの案内を見てみる

Twitter始めました。
40代からプログラミング!
タイトルとURLをコピーしました