Wat ga je maken?
Het "Subscribe for updates"-formulier uit het ontwerp werkt echt: het e-mailadres komt terecht in je Mailchimp-audience.
Waarom is dit nuttig?
Je leert praten met een externe API. Dat principe (sleutel in .env, HTTP-request, foutafhandeling) is hetzelfde bij Mollie, de KvK-API of een weerdienst.
Geen Mailchimp-account? MailerLite of Brevo werken bijna hetzelfde en hebben ook een gratis plan. Overleg met je docent.
us21 uit je API key)..env en maak er een nette config-regel voor. Zet nooit een sleutel rechtstreeks in je code — die gaat mee je Git-repo in en ligt daarmee op straat.email.Httpfacade van Laravel.// config/services.php
'mailchimp' => [
'key' => env('MAILCHIMP_KEY'),
'list' => env('MAILCHIMP_LIST_ID'),
'prefix' => env('MAILCHIMP_PREFIX'), // bijv. us21
],
$response = Http::withBasicAuth('anystring', config('services.mailchimp.key'))
->post("https://{$prefix}.api.mailchimp.com/3.0/lists/{$listId}/members", [
'email_address' => $validated['email'],
'status' => 'subscribed',
]);
if ($response->failed()) {
return back()->withErrors(['email' => 'Aanmelden lukte niet. Probeer het later opnieuw.']);
}
php artisan config:clear # na het wijzigen van .env
curl. Werkt het daar niet, dan ligt het niet aan je Laravel-code.