Skip to content

cesurapp/pd-mailer

Repository files navigation

pdMailer Bundle

pdMailer is the Symfony Mailer extension is written for pdAdmin. It keeps logs of mail sent by Symfony Mailer and provides template interface for mail.

Packagist Github Release license PHP from Packagist

Installation

Step 1: Download the Bundle

This package is written for pdadmin and is required for installation.

Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:

$ composer require appaydin/pd-mailer

This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.

Step 2: Enable the Bundle

With Symfony 5, the package will be activated automatically. But if something goes wrong, you can install it manually.

Then, enable the bundle by adding it to the list of registered bundles in the config/bundles.php file of your project:

<?php
// config/bundles.php

return [
    //...
    Pd\MailerBundle\PdMailerBundle::class => ['all' => true]
];

Configs

create the config/packages/mailer.yaml file for the settings.

logger_active: true
template_active: true
list_count: 30
active_language: ['tr', 'en']
  • logger_active: Enable mail logs.
  • mail_template_type: Mail template form type
  • template_active: Enable mail template.
  • list_count: Log or Template page listing count
  • active_language: List of active languages
  • base_template: Mail template form type
  • template_path: Enable mail template.

How to use

The PDMailer plug-in will enable all mail to be logged by default.

<?php

// Create Message
$email = new Email();
$email
    ->from('example@example.com')
    ->to('example@gmail.com')
    ->subject('Subject')
    ->html([
        'firstname' => 'Ramazan', 'lastname' => 'APAYDIN'
    ]) // Data to be used in the template. - Required
    ->getHeaders()->addTextHeader('template', 'customTemplateID'); // Required

// Send Mail
$this->get('mailer')->send($email);

Create a template for 'customTemplateID' from the pdAdmin panel.