[Résolu]Comment asynchroniser un CSS
Bonjour, quel est le code pour asynchroniser un css et plus particulièrement site.css ?
Mots clés:
Connectez-vous ou Inscrivez-vous pour répondre.
Bonjour, quel est le code pour asynchroniser un css et plus particulièrement site.css ?
Réponses
Par exemple dans header.php je fais comme ceci :
mais je n'y arrive pas pour site.css
Merci d'avance si quelqu'un connaît le moyen d'y parvenir.
Bonjour,
Il existe un HOOK sur la fonction plugnsCSS , via un plugin, on pourrait faire quelque chose comme ceci en reprenant ta methode : https://github.com/gcyrillus/delaySiteCSS/tree/main
Est ce efficace ?
Cdt
Edit : autre solution possible à laquelle j'aurais du penser en premier lieu , retirer de header.php
et les remettre dans footer.php .
Cordialement
Cordialement,
gcyrillus , simple membre du forum et utilisateur de pluxml
Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci
Bonjour, ton plugin fonctionne à merveille pour site.css, merci beaucoup !
ces 2 lignes de code fonctionnent très bien dans header.php ou dans footer.php avec tes 2 lignes de code de ton Edit.
J'ai une question:
Pourrais-tu faire de ton plugin qu'il prenne en charge également plucss et theme.css ?
je teste sur ce site les résultats
https://www.webpagetest.org/
Bonjour,
Je ne suis pas certain que cela soit une bonne idée, le fichier site.css est commun à tous les thèmes, alors que ces deux autres sont particulier au thème par défaut. La logique voudrais que cette modif soit faite directement dans le thème concerné comme tu le fait.
Charger les feuille de style en fin de document ne se suffirait-il pas ?
L’édit de mon post précédent voulais dire de modifier (sans plugin)
le fichier
header.php
et le fichier
footer.php
Ce qui correspond à peu prés à charger/afficher le contenu du document avant les feuilles de styles.
Cdt
Edit, pour faire quelque chose de plus flexible, tu peut éventuellement modifier le plugin pour qu'il recherche tous les attributs
media="screen"
pour les remplacer par ton astuce .possible autre version du plugin :
Cordialement,
gcyrillus , simple membre du forum et utilisateur de pluxml
Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci
Salut @Toulibre,
Une question que je me pose : pourquoi souhaites-tu faire cela ? PluXml est tellement léger qu'en général le site se génère très vite sur une connexion internet normale. Cette fonctionnalité est plutôt utilisée pour les sites hyper lourds qui chargent des tonnes de choses inutiles. Ce qui peut ralentir le chargement d'un site est souvent la présence de nombreuses polices à télécharger sur des sites externes ou des images non optimisées, rarement le css (sauf s'il y en a trop)
@gcyrillus-nomade oui j'avais bien compris au sujet de supprimer du header.php et de le mettre dans footer.php, dans les deux cas cela fonctionne (ta méthode ou la mienne).
Je testerais ce soir la variante du plugin et je t'en ferais le retour, merci
@kowalsky
je le fais pour le fun et pour supprimer les erreurs lors de tests, cela me permets également de finaliser les optimisations déjà effectuées
@gcyrillus-nomade Bonsoir, j'ai testé toutes les possibilités évoquées ci-dessus et elles fonctionnent.
Excepté lorsque j'ai voulu utiliser ta variante, j'ai remis les attributs media="screen" dans header.php puis copié-remplacé le code du plugin variant donné. La page de mon site a alors affiché un message "erreur de code" ou un message qui y ressemble. Me suis-je mal pris dans la manipulation ? Si celui-ci parvenait à fonctionner tu atteindrais la perfectitude
@Toulibre je viens de te mettre sur une autre branche la variante qui fonctionne chez moi https://github.com/gcyrillus/delaySiteCSS/tree/str_replace (tester en php 8.15)
cdt,
probablement qu'une version en
preg_replace
serait plus appropriée , j'y jetterait un œil après le diner ou demain aprés midi.Cdt
Cordialement,
gcyrillus , simple membre du forum et utilisateur de pluxml
Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci
@gcyrillus-nomade juste après avoir lu ton message j'ai téléchargé la variante directement sur ton dépôt et activé le plugin (après avoir supprimé la 1ère version).
testé avec les attributs media="screen" une fois dans header.php et une autre dans footer.php, rien à faire cela ne fonctionne pas de mon côté. PluXml 5.8.7, Version de PHP : 7.3.33 et Apache (infos de mon hébergeur).
le message dit : "erreur d'encodage de contenu, une erreur est survenue pendant une connexion à monsite.fr veuillez contacter les propriétaires du site web pour les informer de ce problème"
J'ai donc réinstallé la 1ère version du plugin qui fonctionne très bien et inclus dans footer.php plucss.css et theme.css
Quoiqu'il en soit tu m'as vraiment aidé et je suis satisfait ainsi, je t'en remercie
@Toulibre Cela à probablement à voir avec : https://forum.pluxml.org/discussion/7164/resolu-gzip-et-erreur-dencodage-de-contenu-avec-certains-plugin#latest
Cdt
Edit, voici une version avec
preg_replace
. https://github.com/gcyrillus/delaySiteCSS/tree/preg_replaceelle prend aussi du coup
media="screen,print"
ou toutes autres valeurs sur toutes les balises<link />
.Cordialement,
gcyrillus , simple membre du forum et utilisateur de pluxml
Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci
@gcyrillus-nomade parfait, r.a.s., nickel, cela fonctionne bien maintenant.
Merci d'avoir pris le temps
Question: le mode gzip est-il désactivé en permanence ?
Supposition: supprimer le mod_deflate detection pour que cela fonctionne correctement, s'il est présent.
cdlt
Oui, pour l'instant je ne sais pas faire autrement.
Si tu utilises le Plugin ponctuellement à des fins de test ce n'est peut-être pas un réel soucis , si ? ( mod_deflate = htaccess si je comprend bien ton interrogation)
Idem
Cordialement,
gcyrillus , simple membre du forum et utilisateur de pluxml
Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci
@gcyrillus-nomade j'ai adopté définitivement ton plugin, dans mon administration il y a activer gzip "oui" ou "non" alors je suppose qu'il est intégré quelque part dans le code de PluXml et qu'il est possible de tenter l'expérience de désactiver le mod_deflate, je ne sais pas où il se trouve (pas dans mon htaccess).
Ce n'est qu'une piste probable et cela permettrait éventuellement à d'autres plugins de refonctionner normalement.
cdlt
oki, il faut seulement se servir d'un autre point d'insertion , par exemple ThemeEndHead https://github.com/gcyrillus/delaySiteCSS/tree/preg_replace-head mais ne seront traitée que les balises link situées entre
<head>
et</head>
Cdt
Cordialement,
gcyrillus , simple membre du forum et utilisateur de pluxml
Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci
ces lignes:
template(); ?>/css/plucss.css?v=1.3.1" media="screen,print"/>
template(); ?>/css/theme.css?v=<?php echo PLX_VERSION ?>" media="screen"/>
<?php $plxShow->templateCss(); $plxShow->pluginsCss(); ?>
replacées comme à l'origine dans header.php.
Tout fonctionne à merveille, si cela intéresse quelqu'un au moins il n'y a aucune modification complémentaire à effectuer après avoir installé ton plugin (le dernier). Idem à la désinstallation.
Chapeau bas, merci beaucoup