Last change
on this file since 106577 was
106577,
checked in by arnaud.berard@…, 2 years ago
|
- ajout de _EMOGRIFIER_DISABLE_STYLE_BLOCK_PARSING = true par defaut
comme le filtre emogrifier utilise des css externes pour inliner le html, on l'aisse les balises style intact dans le html généré afin de les utiliser pour les mediaqueries, hacks navigateur …
|
File size:
942 bytes
|
Line | |
---|
1 | <?php |
---|
2 | /** |
---|
3 | * Fonctions utiles au plugin Emogrifier |
---|
4 | * |
---|
5 | * @plugin Emogrifier |
---|
6 | * @copyright 2013 |
---|
7 | * @author Vertige ASBL |
---|
8 | * @licence GNU/GPL |
---|
9 | * @package SPIP\Emogrifier\Fonctions |
---|
10 | */ |
---|
11 | |
---|
12 | if (!defined('_ECRIRE_INC_VERSION')) { |
---|
13 | return; |
---|
14 | } |
---|
15 | |
---|
16 | if (!defined('_EMOGRIFIER_CSS')) { |
---|
17 | define('_EMOGRIFIER_CSS', 'css/newsletter.css'); |
---|
18 | } |
---|
19 | |
---|
20 | function filtre_emogrifier($html, $fichier_css = _EMOGRIFIER_CSS) { |
---|
21 | |
---|
22 | include_spip('lib/emogrifier/Classes/Emogrifier'); |
---|
23 | |
---|
24 | $fichiers = explode(',', $fichier_css); |
---|
25 | foreach ($fichiers as $fichier) { |
---|
26 | $css .= file_get_contents(find_in_path(trim($fichier))); |
---|
27 | } |
---|
28 | |
---|
29 | // Pouvoir dire à DOMDocument.loadHTML de râler en silence sur le html mal formé |
---|
30 | if (!_EMOGRIFIER_LIBXML_ERROR) { |
---|
31 | libxml_use_internal_errors(true); |
---|
32 | } |
---|
33 | |
---|
34 | $htmldoc = new \Pelago\Emogrifier($html, $css); |
---|
35 | if (_EMOGRIFIER_DISABLE_STYLE_BLOCKS_PARSING) { |
---|
36 | $htmldoc->disableStyleBlocksParsing(); |
---|
37 | } |
---|
38 | return $htmldoc->emogrify(); |
---|
39 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.