8000 GitHub - drmonkeyninja/cakephp-inline-css: Inline your CSS to simplify email styling in CakePHP
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

drmonkeyninja/cakephp-inline-css

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CakePHP Inline CSS

License Build Status

This plugin provides a CakePHP helper that uses CssToInlineStyles to convert HTML style blocks to inline CSS on a View template. Its intended use is with generating email templates where many email clients often require styles applied directly to the elements.

Requirements

  • CakePHP 3.x

Installation

This plugin should be installed using Composer:-

composer require drmonkeyninja/cakephp-inline-css:3.0.*

Then add the following line to your bootstrap.php to load the plugin.

Plugin::load('InlineCss');

Usage

To use this plugin you want to load the InlineCss helper to use with your email's HTML template:-

$email = new Email();
$email->template('welcome', 'fancy')
    ->emailFormat('html')
    ->helpers(['InlineCss.InlineCss'])
    ->to('bob@example.com')
    ->from('app@domain.com')
    ->send();

When rendering your email template the plugin will then convert any CSS defined in an inline <style> block in your template to inline CSS. So, if your email view template looks like this:-

<style type="text/css">
	.link {color: red;}
</style>
<p><a href="http://andy-carter.com" class="link">Link</a></p>

It will be rendered as:-

<p><a href="http://andy-carter.com" class="link" style="color: red;">Link</a></p>

This makes generating HTML emails a lot simpler as you can write your CSS in a more DRY approach.

I recommend you look consider deferring the sending of emails using something like the excellent Queue plugin to improve your app's response time for users when using this plugin.

About

Inline your CSS to simplify email styling in CakePHP

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

0