dachcom-digital / emailizr
Pimcore Emailizr - create html emails the right way!
Package info
github.com/dachcom-digital/pimcore-emailizr
Type:pimcore-bundle
pkg:composer/dachcom-digital/emailizr
Requires
- pelago/emogrifier: ^7.0
- pimcore/pimcore: ^11.4
- twig/inky-extra: ^3.0
- twig/twig: ^3.14
Requires (Dev)
- codeception/codeception: ^5.0
- codeception/module-symfony: ^3.1
- phpstan/phpstan: ^2.0
- phpstan/phpstan-symfony: ^2.0
- symplify/easy-coding-standard: ~12.2.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Important
This bundle will not be compatible with Pimcore 12 or any future Pimcore versions.
For all future development, updates, and documentation, please refer to opendxp.io:
- Access the latest info here: https://www.opendxp.io/en/bundles
- Migration of Dachcom Digital Bundles: https://www.opendxp.io/en/dachcom-bundles
Note: We are open to partnerships for those interested in porting this bundle to future versions.
For inquiries, please contact: dcdi@dachcom.ch
Requirements
- Pimcore ^11.4
- PHP >= 8.1
- Twig >= 3.9
Release Plan
| Release | Supported Pimcore Versions | Supported Symfony Versions | Release Date | Maintained | Branch |
|---|---|---|---|---|---|
| >=3.1 | 11.4 |
^6.4 |
08.01.2025 | Feature Branch | master |
| 3.x | 11.0 |
^6.2 |
30.08.2023 | Feature Branch | master |
| 2.x | 10.1 - 10.6 |
^5.4 |
21.09.2021 | No | 2.x |
| 1.x | 6.0 - 6.9 |
3.4, ^4.4 |
06.12.2017 | No | 1.x |
Installation
"require" : { "dachcom-digital/emailizr" : "~3.2.0", }
Add Bundle to bundles.php:
return [ EmailizrBundle\EmailizrBundle::class => ['all' => true], ];
- Create valid email markup with inky and inline styles.
- Respect editables in pimcore edit mode.
Usage
Just extend the emailizr layout:
{% extends '@Emailizr/layout.html.twig' %}
This will include a markup like this. You may want to change it:
{% apply spaceless %}
{{ emailizr_style_collector.add('@EmailizrBundle/public/css/foundation-for-emails/foundation.min.css') }}
{% emailizr_inline_style %}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width"/>
{% block headStyles %}
<style type="text/css">
{% autoescape false %}
{{ emailizr_inline_style(emailizr_style_collector) }}
{% endautoescape %}
</style>
{% endblock %}
</head>
{% apply inky_to_html %}
<body>
{% block body %}
<table class="body">
<tr>
<td class="center" align="center" valign="top">
<center>
{% block content %}
{% endblock %}
</center>
</td>
</tr>
</table>
<!-- prevent Gmail on iOS font size manipulation -->
<div style="display:none; white-space:nowrap; font:15px courier; line-height:0;"> </div>
{% endblock %}
</body>
{% endapply %}
</html>
{% end_emailizr_inline_style %}
{% endapply %}
Service
If you need to parse values in a custom context, you may use the ContentService.
<?php use EmailizrBundle\Service\ContentService; class YourClass { public function __construct(protected ContentService $contentService) { } public function parse($content) { $cssFile = PIMCORE_WEB_ROOT . '/static/css/email.css'; return $this->contentService->checkContent($content, $cssFile, FALSE, TRUE, TRUE); } }
Further Information
Upgrade Info
Before updating, please check our upgrade notes!
License
DACHCOM.DIGITAL AG, Löwenhofstrasse 15, 9424 Rheineck, Schweiz
dachcom.com, dcdi@dachcom.ch
Copyright © 2025 DACHCOM.DIGITAL. All rights reserved.
For licensing details please visit LICENSE.md