wadeshuler / yii2-subscriber
使用队列进行短信和电子邮件营销的Yii2订阅者模块。
Requires
- php: >=5.4.0
- ruskid/yii2-csv-importer: ~1.0
- wadeshuler/yii2-ckeditor-cdn: ~1.0
- yiisoft/yii2: ~2.0.6
This package is auto-updated.
Last update: 2022-04-03 04:36:39 UTC
README
使用队列发送短信和电子邮件营销的Yii2订阅者模块。
先决条件
此扩展依赖于您的邮件和短信组件配置正确,因为它将使用默认配置的值进行发送。由于这些默认值由Yii2自带并可通过代码手动设置,因此不应产生任何不利影响。
您还需要一个与Yii的邮件发送器(Yii::$app->sms->compose()
)类似工作的SMS扩展/组件,否则短信发送将不会工作!
我的Yii2 SMS Twilio扩展是一个很好的例子。如果您不使用Twilio,您可以复制它并推出自己的。请参阅其文档以获取更多信息。
注意:任何与内置Yii2邮件发送器(
Yii::$app->sms->compose()
)类似工作的SMS扩展都应工作,如果除了我的之外还有其他...
设置邮件发送器默认值
高级:`common/config/main-local.php`
基本:`config/web.php` 和 `config/console.php`
'components' => [
// ....
'mailer' => [
// ....
'messageConfig' => [
'from' => ['admin@example.com' => 'Company Name'],
'replyTo' => 'noreply@example.com',
],
],
],
设置短信默认值
高级:`common/config/main-local.php`
基本:`config/web.php` 和 `config/console.php`
'components' => [
// ....
'sms' => [
// ....
'messageConfig' => [
'from' => '+15554441234',
],
],
],
注意,上述电子邮件和短信配置都利用了`messageConfig`数组来设置默认值。
安装
安装此扩展的首选方式是通过composer
运行以下命令之一:
composer require --prefer-dist wadeshuler/yii2-subscriber
或
"wadeshuler/yii2-subscriber": "~1.0"
将其添加到应用程序的`composer.json`文件的`require`部分。
添加到`backend/config/main.php`(高级),`config/web.php`(基本)
'modules' => [
// ....
'ckeditor' => [
'class' => 'wadeshuler\ckeditor\Module',
],
'subscriber' => [
'class' => 'wadeshuler\subscriber\Module',
'emailTemplate' => '@common/mail/templates/new.tpl', // optional: must create yourself
'domainUrl' => 'https://example.com', // optional: good for setting root url for links/images
],
],
添加到`console/config/main.php`(高级),`config/console.php`(基本)
'modules' => [
// ....
'subscriber' => [
'class' => 'wadeshuler\subscriber\Module',
'emailBatchSize' => 250,
'smsBatchSize' => 250,
'emailTemplate' => '@common/mail/templates/new.tpl', // optional: must create yourself
'domainUrl' => 'https://example.com', // optional: good for setting root url for links/images
],
],
迁移
./yii migrate/up --migrationPath=@wadeshuler/subscriber/migrations/
cron
您可以通过以下方式测试cron处理或手动运行它:
./yii subscriber/cron/run
创建一个运行频率尽可能高的cron作业来处理队列。我建议每5分钟运行一次。
/path/to/yii subscriber/cron/run
替换
以下标签将被替换为可用信息
-domainUrl-
-name-
-userId-
-email-
还有一个仅用于电子邮件模板的`-pretext-`标签。这样您可以设置HTML电子邮件的第一/不可见的前置行,以控制用户电子邮件客户端中首先显示的内容。 注意:您的电子邮件模板必须正确创建才能正常工作。更多信息请参阅:[https://litmus.com/blog/the-ultimate-guide-to-preview-text-support](https://litmus.com/blog/the-ultimate-guide-to-preview-text-support)
要使用`-domainUrl-`,它必须在应用程序的配置中配置(如上所示)。它应该是您站点的根路径,用于所有链接。这对于创建退订链接、插入图片等很有用。这是可选的。
路由
以下是您将通过侧边栏链接的主要路由
subscriber/manage/index
subscriber/sms-campaign/index
subscriber/email-campaign/index
subscriber/sms-queue/index
subscriber/email-queue/index
从那里,如果您需要深度链接(例如:链接到`/subscriber/manage/create`),您将找到所有其他内容。
捐赠
如果您觉得我的代码有用,请考虑捐赠。