CakephpEmogrifierPlugin is a CakePHP 2.0x Plugin that makes of using Emogrify on your HTML output easy.
Wondering what Emogrify is? Emogrifier is a great library from Pelago that deals with much of the hassle involved with HTML formatted email messages:-
This Plugin is a wrapper around Emogrifier making it easy to use in CakePHP 2.0x
Copy or symlink CakephpEmogrifierPlugin into a path named Emogrifier in your Plugin path like this:-
app/Plugin/Emogrifier
Take careful note of the Plugin pathname, the name is "Emogrifier", not EmogrifierPlugin or CakephpEmogrifierPlugin, it's just Emogrifier. I spell this out because it's an easy thing to trip up on especially if your pulling this down from github or unpacking from a tarball.
Be sure to load the plugin in your bootstrap.php or core.php, like this:-
CakePlugin::load('Emogrifier');
Tell your controller to render your view with Emogrifier like this:-
$this->viewClass = 'Emogrifier.Emogrifier';
Q: Pelago's Emogrifier class requires you to pass in the CSS but this plugin does
not, what's going on?
A: We parse the HTML from the View->output attribute looking for CSS from link
and style elements then stich the whole thing together - it makes using this
a little easier.
Q: I'm using Emogrifier before rendering to webpages and I can't see any difference
A: Take a look at the HTML source, you should notice that all your CSS styles are
now inline element style attributes.
Q: Why does this Plugin have no Tests?
A: Because call me daft, I just can't work out how to write a PHPUnit test for
output from a Plugin View - let me know if you do!