/**configure your WordPress site to send emails via the Brevo API**/ function send_email_via_brevo($to, $subject, $message, $headers = '', $attachments = []) { $api_url = 'https://api.brevo.com/v3/smtp/email'; $api_key = '123'; // Your Brevo API key // Email data structure $email_data = [ 'sender' => [ 'email' => 'contact@example.com', // Your email address 'name' => 'Your Name' // Your name ], 'to' => [ [ 'email' => $to, // Recipient's email 'name' => '' // Recipient's name (optional) ] ], 'subject' => $subject, 'htmlContent' => $message ]; // Headers for the API request $request_headers = [ 'Content-Type: application/json', 'api-key: ' . $api_key ]; // Arguments for the API request $args = [ 'body' => json_encode($email_data), 'headers' => $request_headers, 'method' => 'POST', 'data_format' => 'body' ]; // Send the API request $response = wp_remote_post($api_url, $args); // Handle any errors if (is_wp_error($response)) { error_log('Email sending failed: ' . $response->get_error_message()); return false; } // Log the response $response_body = wp_remote_retrieve_body($response); error_log('Email sent response: ' . $response_body); return true; } function override_wp_mail($args) { return send_email_via_brevo($args['to'], $args['subject'], $args['message'], $args['headers'], $args['attachments']); } add_filter('wp_mail', 'override_wp_mail', 10, 1);
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter