Download the PHP package jsefton/laravel-mailing-list without Composer
On this page you can find all versions of the php package jsefton/laravel-mailing-list. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download jsefton/laravel-mailing-list
More information about jsefton/laravel-mailing-list
Files in jsefton/laravel-mailing-list
Package laravel-mailing-list
Short Description Laravel mailing list manager
License MIT
Homepage https://endor.digital
Informations about the package laravel-mailing-list
Laravel Mailing List
This package gives you a quick out the box mailing list storage and API to use to add people to specific mailing lists
You can create a mailing list and then attach a email contact to a list.
Installation
You will need to publish the config to set if API is enabled
Next run migrations to add the required tables
Usage
Config
The configuration file allows you to enable or disable the API feature. The API feature provides a POST endpoint that you can consume in your application for a sign up form to send the data and have it store against a specific mailing list.
The API flag is set through an environment variable of MAILING_LIST_API
You can also change the route that is used for the API subscribe endpoint to anything you desire.
The above will result in API POST requests to be sent to /api/mailing-list/{id}
, where {id}
is the ID of the mailing list.
This is registered within the application with a named route and can be linked to with:
API
The API only exposes an endpoint for people to subscribe in order to not expose any data.
You can send the following data to the endpoint:
Many forms will not have 2 different fields for first_name
and last_name
. So the API has been built to allow you to POST just name
field and will automatically split this up into first name and last name. E.g.
Console
You can either create a new mailing list directly through the database, with your own UI you create or using the shipped console command. You can do this by running:
This will then ask you to enter a name of the mailing list. Once complete it will return back the ID of the new mailing list for you to use in your application to create POST requests to the API
You can get a list of current mailing lists in your console by running:
Models
If you wish to just consume the models within your application and maybe not use the API then you can use the following models. The models are standard eloquent and can be used in a standard Laravel way.
MailingList
namespace: JSefton\MailingList\Models\MailingList
Contains the individual lists that a user is subscribed against, which can be created in the above console command.
You can get the email contacts attached to a specific list once loaded with:
MailingListEmail
namespace: JSefton\MailingList\Models\MailingListEmail
This is the object of each individual email that is subscribed. They are attached to a MailingList and is unique per email per list.
You can get the mailing list they are attached to with:
Please note currently for Laravel 7+ until tested and verified in lower versions.