/** * Override the default implementation of wp_mail(). * * This function is responsible for marshalling the parameters into the JSON * data that is sent to Hectane. */ function wp_mail($to, $subject, $message, $headers = '', $attachments = array()) { if (!is_array($to)) { $to = array($to); } $headers = hectane_parseHeaders($headers); $from = hectane_emailFrom($headers); unset($headers['From']); $email = array('from' => $from, 'to' => is_array($to) ? $to : array($to), 'subject' => $subject, 'headers' => $headers ? $headers : new stdClass()); if (hectane_isMessageHtml($message)) { $email['html'] = $message; } else { $email['text'] = $message; } return HectaneAPI::instance()->send($email); }
<?php // Poor man's testing. Run with: // $ php ./test.php function is_admin() { return false; } function plugin_dir_path($x) { return './'; } require_once 'hectane.php'; // Test hectane_isMessageHtml echo (hectane_isMessageHtml("<html>hello</html>") ? "OK" : "FAILED") . "\n"; echo (!hectane_isMessageHtml("<htl>hello</html>") ? "OK" : "FAILED") . "\n"; echo (!hectane_isMessageHtml("Welcome my friend") ? "OK" : "FAILED") . "\n"; echo (!hectane_isMessageHtml("V<html>hello</html>") ? "OK" : "FAILED") . "\n"; echo (hectane_isMessageHtml("<table length=\"12\">hello</table>") ? "OK" : "FAILED") . "\n";