河流天空/laravel-newsletter-subscription

适用于Laravel项目的简单新闻订阅。

1.2.1 2017-09-08 15:10 UTC

This package is auto-updated.

Last update: 2024-09-20 06:35:47 UTC


README

这是一个简单的包,用于在Laravel应用程序上下文中启用新闻订阅。

安装

$ composer require riverskies/laravel-newsletter-subscription

Laravel 5.4或更早版本

将服务提供者添加到您的config/app.php文件中

'providers' => [
    // ...
    Riverskies\LaravelNewsletterSubscription\Providers\NewsletterSubscriptionServiceProvider::class,
];

使用

在任何页面内包含一个简单的表单。

<form action="/subscribe" method="POST">
    {{ csrf_field() }}
    <input type="email" name="email"/>
    <button type="submit">Subscribe</button>
</form>

您可能还希望在同一个页面上包含通知显示。

@if(session('flash'))
    <p>{{ session('flash') }}</p>
@endif

订阅

此包收集电子邮件地址并将它们存储在数据库中。您可以通过查询Riverskies\LaravelNewsletterSubscription\NewsletterSubscription Eloquent模型来访问这些订阅。

注意

此包使用Mail外观来发送电子邮件,并且发送是队列的,所以请确保您的环境配置中的QUEUE_DRIVER设置正确。

发布资产

您可以通过覆盖默认配置值来覆盖数据库表名、相关URL、电子邮件模板格式和会话键。

$ php artisan vendor:publish --tag='newsletter-subscription-config'

您可以通过覆盖默认视图来设计确认电子邮件。

$ php artisan vendor:publish --tag='newsletter-subscription-views'

您可以通过覆盖默认本地化值来本地化/更改消息。

$ php artisan vendor:publish --tag='newsletter-subscription-translations'

注意事项

此包使用hashids/hashidshttps://github.com/ivanakimov/hashids.php)来帮助从订阅记录的id字段中推导出退订链接。这些哈希值不会存储在数据库中,而是在运行时进行编码/解码。为了生成唯一的代码,此包使用环境设置中的APP_KEY。如果它发生变化,之前生成的退订链接将不再有效。

贡献

只要遵循PSR-2标准,并且包含更改所需的全部相应测试(不用说,这些测试也不应该破坏先前的行为),则PR是受欢迎的。