uneak/mailjet-bundle

Symfony MailjetBundle

安装: 292

依赖者: 0

建议者: 0

安全性: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

类型:symfony-bundle

dev-master 2015-01-08 14:29 UTC

This package is auto-updated.

Last update: 2024-09-20 00:58:45 UTC


README

Uneak Mailjet Bundle 是一个用于帮助我们利用 Mailjet API 的捆绑包。

它包含了一个重构版本的 Mailjet API 客户端(可在 https://www.mailjet.com/plugin/php-mailjet.class.php 找到)并符合

  • PSR-0 标准
  • 捆绑包配置

先决条件

此版本的捆绑包需要 Symfony 2.1+。

安装

使用 composer 下载 UneakMailjetBundle

在您的 composer.json 中添加 UneakMailjetBundle

{
    "require": {
        "uneak/mailjet-bundle": "dev-master"
    }
}

现在运行以下命令告诉 composer 下载捆绑包

$ php composer.phar update uneak/mailjet-bundle

Composer 将将捆绑包安装到您项目的 vendor/uneak 目录。

启用捆绑包

在内核中启用捆绑包

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Uneak\MailjetBundle\MailjetBundle(),
    );
}

配置 Mailjet

在您的 config.yml 中

mailjet:
    api_key: %mailjet_api_key%
    api_secret: %mailjet_api_secret%

用法

API 通过 "mailjet.email" 服务可用。在您的控制器(或其他地方)

		$email = $this->get("mailjet.email");
		$email
				->setSender(new EmailUser("some@email.com", "Some Name"))
				->addReceiver(new EmailUser("some@email.com", "Some Name"))
				->addReceiver(new EmailUser("some@email.com", "Some Name"))
				->addCCReceiver(new EmailUser("some@email.com", "Some Name"))
				->setSubject("{{ hello }} {{ user.name }} at {{ user.email }}")
				->setBody("SomeBundle:Mail:test.html.twig")
				//->setBody("Hi {{ user.name }} at {{ user.email }}")
				->addParameter('hello', 'Salut')
				->setHtml(true)
				->sendOneByOne()
				;

		$email = $this->get("mailjet.email");
		$email
				->setSender(new EmailUser("some@email.com", "Some Name"))
				->addReceiver(new EmailUser("some@email.com", "Some Name"))
				->addReceiver(new EmailUser("some@email.com", "Some Name"))
				->addCCReceiver(new EmailUser("some@email.com", "Some Name"))
				->setSubject("{{ hello }} everybody")
				->setBody("SomeBundle:Mail:test.html.twig")
				//->setBody("Hello everybody")
				->addParameter('hello', 'Hi')
				->setHtml(true)
				->send()
				;