méthode chargement des polices

This commit is contained in:
Fred Tempez 2022-03-04 17:59:30 +01:00
parent 5e4eede049
commit 33086ee933
3 changed files with 15 additions and 7 deletions

View File

@ -2,9 +2,11 @@
## Version 11.3.04 ## Version 11.3.04
### Corrections : ### Correction :
- Duplication d'id dans le menu. - Duplication d'id dans le menu.
https://sia.codes/posts/making-google-fonts-faster/ ### Amélioration :
- Chargement des fontes optimisé, le dossier data/fonts contient un nouveau fichier fonts.html contenant les url des fontes à télécharger. ce fichier est régénéré à chaque mise à jour du thème.
## Version 11.3.03 ## Version 11.3.03
### Modifications : ### Modifications :

View File

@ -2125,6 +2125,10 @@ class common {
} }
echo '<style type="text/css">' . helper::minifyCss($this->output['style']) . '</style>'; echo '<style type="text/css">' . helper::minifyCss($this->output['style']) . '</style>';
} }
// Import des fontes
if (file_exists(self::DATA_DIR.'fonts/fonts.html')) {
include_once(self::DATA_DIR.'fonts/fonts.html');
}
} }
/** /**
@ -2320,11 +2324,12 @@ class core extends common {
$localFonts = $this->getData(['fonts', 'files']); $localFonts = $this->getData(['fonts', 'files']);
/** /**
* Chargement des polices en ligne * Chargement des polices en ligne dans un fichier séparé
*/ */
$fontFile = '';
foreach ($fonts as $fontId) { foreach ($fonts as $fontId) {
if (!array_key_exists($fontId, $localFonts) ) { if (!array_key_exists($fontId, $localFonts) ) {
$css .= '@import url("https://fonts.cdnfonts.com/css/' . $fontId . '");'; $fontFile .= '<link href="https://fonts.cdnfonts.com/css/' . $fontId .'" rel="stylesheet">';
// Supprimer l'élément des fontes chargées en ligne // Supprimer l'élément des fontes chargées en ligne
unset($fonts[$fontId]); unset($fonts[$fontId]);
} }
@ -2518,6 +2523,7 @@ class core extends common {
// Enregistre la personnalisation // Enregistre la personnalisation
file_put_contents(self::DATA_DIR.'theme.css', $css); file_put_contents(self::DATA_DIR.'theme.css', $css);
file_put_contents(self::DATA_DIR.'fonts/fonts.html', $fontFile);
// Effacer le cache pour tenir compte de la couleur de fond TinyMCE // Effacer le cache pour tenir compte de la couleur de fond TinyMCE
header("Expires: Tue, 01 Jan 2000 00:00:00 GMT"); header("Expires: Tue, 01 Jan 2000 00:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");