Carnet Wiki

Version 6 — Octobre 2018 — 176.153.xx.xx

Suite à mes recherches sur l’optimisation pour page speed, j’ai fais quelques tests :

-  Mettre async à l’appel du js dans la fonction : function compresseur_ecrire_balise_js_dist

chemin : plugins-dist/compresseur/inc/compresseur.php

<cadre class=« php  »>
>
function compresseur_ecrire_balise_js_dist(&$flux, $pos, $src, $comments = « »)
$src = timestamp($src) ;
// option chargement JS async par jQl
if (defined(’_JS_ASYNC_LOAD’) and !test_espace_prive())
lire_fichier(find_in_path(« lib/jQl/jQl.min.js »), $jQl) ;
if ($jQl)
$comments .= "

" ;
else
$comments .= "

" ;

else
$comments .= "

" ;

$flux = substr_replace($flux, $comments, $pos, ) ;

return $flux ;

Mon résultat sur page speed s’est amélioré (un peu) mais cette modification à « cassé » la page d’admin « vider le cache » : dans les blocs Images calculées automatiquement et images pour responsive, il n’y avait plus de texte ni bouton vider.

-  Mettre define(’_JS_ASYNC_LOAD’,true) ; dans le fichier mes_options (config) : pas de chargement asynchrone pour mon site

Info : https://www.spip.net/fr_article5713.html
Il est également possible d’activer via la constante _JS_ASYNC_LOAD un chargement asynchrone du JavaScript compressé de l’espace public par l’intermédiaire de la bibliothèque jQL intégrée au compresseur. Il faut que les scripts « inline » soient compatibles.

-  Essayer l’astuce de https://gist.github.com/tech-nova/85ce2dd05e3596571369

J’ai copié dans config le fichier jQl.min.js (qui se trouve dans plugins-dist/compresseur /lib/jQl) et ajouté dans mes_options :

<cadre class=« php  »>
>
function compresseur_ecrire_balise_js(&$flux, $pos, $src, $comments = « »)
if (file_exists($src) AND $t = @filemtime($src))
$src = « $src ?$t » ;
if (test_espace_prive())
$comments .= "

" ;
else
lire_fichier(basename(dirname(__FILE__)) . « /jQl.min.js », $jQl) ;
$comments .= "

" ;

$flux = substr_replace($flux, $comments, $pos, ) ;
return $flux ;

Résultat : chargement asynchrone du js donc amélioration du score page speed.

Par contre, il me semble que le plugin image responsive ne fonctionne plus comme avant (https://www.paris-beyrouth.org/Plugin-SPIP-Image-responsive)

Info : Le principe de ce plugin consiste à afficher (ou non) une vignette de l’image, puis à charger (dès que Javascript se déclenche) l’image définitive aux bonnes dimensions et à la bonne résolution.