我必须在.env
文件中定义List ID和MailChimp API Key。我确定两者都很好,即使我没有收到任何错误,但是电子邮件没有插入我的列表中我安装了https://github.com/spatie/laravel-newsletter( spatie / laravel-newsletter )包。
这是我的方法
public function subscribe(Request $request)
{
$email = request('email');
Newsletter::subscribe($email);
Session::flash('subscribed', 'Successfully subscribed.');
return redirect()->back();
}
然后我在Newsletter.php
它是
public function subscribe($email, $mergeFields = [], $listName = '', $options = [])
{
$list = $this->lists->findByName($listName);
$options = $this->getSubscriptionOptions($email, $mergeFields, $options);
$response = $this->mailChimp->post("lists/{$list->getId()}/members", $options);
if (! $this->lastActionSucceeded()) {
return false;
}
return $response;
}
我打印选项变量,它将输出返回为
array:3 [▼
"email_address" => "bluemoon@gmail.com"
"status" => "subscribed"
"email_type" => "html"
]
然后我打印下面的变量 $ response它返回false 请帮助我们错了。
提前致谢
答案 0 :(得分:0)
不确定这会直接解决您的问题,但您需要在终端中运行以下命令:
php artisan vendor:publish --provider="Spatie\Newsletter\NewsletterServiceProvider"
这会在laravel-newsletter.php
目录中创建config
,这是您的列表ID和MailChimp API密钥所在的位置。
PS:该软件包似乎与env
存在问题,因此请勿使用它,只需将密钥输入为字符串即可。