Download the PHP package larablocks/pigeon without Composer
On this page you can find all versions of the php package larablocks/pigeon. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package pigeon
Pigeon
A more flexible email message builder for Laravel 5 including chained methods, reusable message type configurations, and email layout and template view management.
Note: All Larablocks packages will have releases in line with the major Laravel framework version release. (Ex. Pigeon 5.4. is tested to work with Laravel 5.4. while Pigeon 5.1. is tested to worked with Laravel 5.1.)
Installation
Add larablocks/pigeon
as a requirement to composer.json
:
Update your packages with composer update
or install with composer install
.
Laravel Integration
To wire this up in your Laravel project you need to add the service provider. Open app.php
, and add a new item to the providers array.
Then you may add a Facade for more convenient usage. In your app.php
config file add the following line to the aliases
array.
Note: The Pigeon facade will load automatically, so you don't have to add it to the app.php
file but you may still want
to keep record of the alias.
To publish the default config file config/pigeon.php
along with the default email view files use the artisan command:
php artisan vendor:publish --provider="Larablocks\Pigeon\PigeonServiceProvider"
If you wish to not publish the view files and only publish the config then use the artisan command:
php artisan vendor:publish --provider="Larablocks\Pigeon\PigeonServiceProvider" --tag="config"
Usage as a Facade
Setting the General Message Properties
Pigeon will load all properties set in the default
area of your config before you construct your message.
Set message addresses:
All these address add methods can be used with any of the address add functions (to, cc, bcc, replyTo, from, sender)
Add a single address with no name
Add a single address with name
Add array of addresses with no names
Add array of addresses some with names, some without names
Set Subject:
File Attachments:
Attach a single file with no options
Attach a single file with options
Attach an array of files
Setting the Message View Properties
Set layout view file:
Set template view file:
Passing View Variables:
Passing simple variables:
Passing object variables:
If is used more than once it will merge previously passed variables with the current passed set.
Note: Make sure all variables pre-defined in your layout and template view files are passed to your Pigeon message.
Clearing View Variables:
Clear all previously passed view variables
Custom Messages Types
Custom message types will be configured in the config/pigeon.php
file. In this file you can find examples on how
to properly set up a custom message type.
Default:
Set your defaults for all messages sent with Pigeon in
Load Custom Message:
Set your defaults for a particular message type to be sent with Pigeon in
This will load all the message properties from your config defined for custom_message_type
.
Order of Loading:
Default -> Custom Message (if set and loaded) -> Properties set with individual Pigeon functions
Sending the Message
Send Message:
Send Raw Message:
Pass a string as a param for the send() function and it will use the string as a raw message send and will ignore any view files or view variables assigned.
Example - Using it all together
Example - Simple call
Example - Sending a custom message
Usage as a Passed Dependency
To pass Pigeon as a dependency will will pass the interface Larablocks\Pigeon\PigeonInterface
. For now the only library
that implements this interface is Larablocks\Pigeon\IlluminateMailer
provided by Laravel but we want to allow for other mailing libraries to be used in the future.
The config/pigeon.php
config file for Pigeon automatically sets IlluminateMailer as the default mailer library for you.
Passing Pigeon to a constructor:
Starting a new default message:
Starting a new custom message type:
License
Pigeon is open-sourced software licensed under the MIT license
All versions of pigeon with dependencies
illuminate/config Version ~5.4
illuminate/mail Version ~5.4
illuminate/log Version ~5.4