XpertPhp

  • Home
  • Javascript
    • Jquery
    • React JS
    • Angularjs
    • Angular
    • Nodejs
  • Codeigniter
  • Laravel
  • Contact Us
  • About Us
  • Live Demos
Laravel 7 Newsletter Tutorial with Example
Laravel 7 Newsletter Tutorial with Example

Laravel 7 Newsletter Tutorial with Example

September 6, 2020 XpertPhp Comments 0 Comment

Today, We will explain to you the Laravel 7 Newsletter Tutorial with Example. here we are using the “Spatie/Laravel-newsletter” package to create a newsletter in laravel.

So you can follow the below steps for Newsletter Tutorial with example in laravel 7.

Overview

Step 1: Install Laravel 7

Step 2: Install Newsletter Package

Step 3: Sign Up and get API key in MailChimp

Step 4: Setup API Key

Step 5: Create Controller

Step 6: Create Route

Step 7: Create Blade Files

Step 8: Run Our Laravel Application

Laravel 7 Newsletter Tutorial with Example

Step 1: Install Laravel 7

We are going to install laravel 7, so first open the command prompt or terminal and go to xampp htdocs folder directory using the command prompt. after then run the below command.

PHP
1
composer create-project --prefer-dist laravel/laravel laravel7_newsletter

Step 2: Install Newsletter PackageIn this step, We will install an amazon s3 package using the below command.

1
composer require spatie/laravel-newsletter

Now, We will generate a configuration file for the newsletter using the following command.

1
php artisan vendor:publish --provider="Spatie\Newsletter\NewsletterServiceProvider"

Step 3: Sign Up and get API key in MailChimp
here in this step, you have to login or sign up on your Mailchimp account . after then you can find and get the API key in your Mailchimp account.

Step 4: Setup API Key
After the complete installation of the newsletter package. we have to set the API key and id configuration. now we will open the .env file and add the API key and id. See below changes in a .env file.

1
2
MAILCHIMP_APIKEY=Api Key
MAILCHIMP_LIST_ID=List Id

Step 5: Create Controller
Here below command help to create the controller.

1
php artisan make:controller NewsletterController

app/Http/NewsletterController.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
 
namespace App\Http\Controllers;
 
use Illuminate\Http\Request;
use Newsletter;
 
class NewsletterController extends Controller
{
    public function create()
    {
        return view('newsletter');
    }
 
    public function store(Request $request)
    {
        if ( ! Newsletter::isSubscribed($request->email) )
        {
            Newsletter::subscribePending($request->email);
            return redirect('newsletter')->with('success', 'Thanks For Subscribe');
        }
        return redirect('newsletter')->with('error', 'Sorry! You have already subscribed ');
            
    }
}
?>

Step 6: Create Route
Add the following route code in the “routes/web.php” file.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('newsletter','[email protected]');
Route::post('newsletter','[email protected]');
?>

Step 7: Create Blade Files

So finally, first we will open the newsletter.blade.php file and then paste the following code.
resources/views/newsletter.blade.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<!DOCTYPE html>
<html lang="en">
<head>
  <title>Laravel 7 Newsletter Tutorial with Example - XpertPhp</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-lg-12">
@if ($message = Session::get('success'))
<div class="alert alert-success alert-block">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong>{{ $message }}</strong>
</div>
@endif
@if ($message = Session::get('error'))
<div class="alert alert-danger alert-block">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong>{{ $message }}</strong>
</div>
@endif
</div>
</div>
  
        <form method="post" action="{{url('newsletter')}}">
        @csrf
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-2">
  <label for="Email">Email:</label>
  <input type="text" class="form-control" name="email">
</div>
</div>   
<div class="row">
<div class="col-md-4"></div>
<div class="form-group col-md-4">
<button type="submit" class="btn btn-success">Submit</button>
</div>
</div>
      </form>
</div>
</body>
</html>

Step 8: Run Our Laravel Application
We can start the server and run this example using the below command.

1
php artisan serve

Now we will run our example using the below Url in the browser.

1
http://127.0.0.1:8000/newsletter

Read Also
Laravel 6 CRUD (Create Read Update Delete) Tutorial For Beginners

Laravel 7 CRUD Operation With Ajax Example

Laravel 6 CRUD Operation With Ajax Example

Laravel 6 Pagination Example Tutorial

Laravel 7 Pagination Example Tutorial

Please follow and like us:
error
fb-share-icon
Tweet
fb-share-icon

Laravel
laravel 7, laravel create newsletter, laravel newsletter, laravel newsletter app

Post navigation

NEXT
Laravel 8 CRUD (Create Read Update Delete) Tutorial For Beginners
PREVIOUS
Laravel 7 s3 File Upload Tutorial With Example

Latest Posts

  • Laravel 10 Dropzone Image Upload Example Tutorial
  • Laravel 10 Fullcalendar Example Tutorial
  • Laravel 10 Form Validation Example Tutorial
  • Laravel 10 Image Upload Example Tutorial
  • Laravel 10 Pagination Example Tutorial
  • Laravel 10 Send Email Example Tutorial
  • Laravel 10 Ajax CRUD Example Tutorial
  • Laravel 10 CRUD Example Tutorial
  • How to disable button in React js
  • JQuery Interview Questions and Answers

SUBSCRIBE TO OUR NEWSLETTER

Email


Categories

  • Ajax
  • Angular
  • Angularjs
  • Bootstrap
  • Codeigniter
  • Css
  • Htaccess
  • Javascript
  • Jquery
  • Laravel
  • MongoDB
  • MySql
  • Nodejs
  • Php
  • React JS
  • Shopify Api
  • Ubuntu

Tools

  • Compound Interest Calculator
  • Hex to RGB Color Converter
  • Pinterest Video Downloader
  • Birthday Calculator
  • About Us
  • Contact Us
  • Privacy Policy
  • Terms & Conditions
  • Site Map

Sponsored Links : minifytools.com

© Copyright 2018 - © 2023, All Rights Reserved Powered by XpertPhp.com