Here’s the code I’m using in my theme’s functions.php file to make wpMandrill and Gravity Forms play nicely together so that HTML and plain text emails both work with Mandrill:
<?php
// Add to functions.php and leave the “Content” box unticked in Settings > Mandrill
// Be sure to omit the opening <?php tag when copying this code
// Add paragraph breaks to plain text notifications sent by Mandrill
add_filter('mandrill_payload', 'wpmandrill_auto_add_breaks');
function wpmandrill_auto_add_breaks($message) {
$html = $message['html'];
$is_comment_notification = ( $message['tags']['automatic'][0] == 'wp_wp_notify_moderator' );
$is_password_reset = ( $message['tags']['automatic'][0] == 'wp_retrieve_password' );
$no_html_found = ( $html == strip_tags($html) );
// Add line breaks and links to messages that don't appear to be HTML
if ( $no_html_found || $is_comment_notification || $is_password_reset ) {
$html = wpautop($html);
$message['html'] = make_clickable($html);
}
return $message;
}
I’ve not tested this with other plugins such as WooCommerce, but you’re welcome to try it and post an update here if it helps.
I’ll keep the gist here up to date if I change the code to work around any other issues I find: https://gist.github.com/nickcernis/8b87ac0a875e417b304b