web-dev-qa-db-fra.com

Accélérer Wordpress

Je n'ai pas l'impression que mon blog est particulièrement lent, mais c'est parce que je n'ai pas encore commencé. Je suis très inquiet que cela ralentisse bientôt, surtout parce que j'aurai des billets de blog avec 40-50 photos (optimisées/compressées). Cela ne peut pas être changé, mais d'autres choses peuvent.

J'ai déjà beaucoup lu à ce sujet, j'ai suivi divers tutoriels, mais je pense que je pourrais en faire davantage.

Tout d’abord, mon blog semble bien se porter pour le moment. Au moins selon Webpagetest.org .

Voici mon blog , afin que vous puissiez essayer vous-même. J'essaie de comprendre VRAIMENT tous les résultats, mais je ne les ai pas tous.

Images:

J'ai déjà compressé la plupart de mes images. Les sprites CSS prennent beaucoup de temps et je vais donc sauter ceci pour le moment et y travailler beaucoup plus tard, alors que le trafic est un peu plus élevé.

Pour compresser mes images, j'utilise Photoshop (enregistrer pour le Web) et le SmushIt de Yahoo.

Javascript:

Les scripts que j'utilise semblent poser quelques problèmes de rapidité car je reçois les suggestions suivantes du site Webpagetest.org:

"380,5 Ko de JavaScript sont analysés lors du chargement initial de la page. Différez l'analyse de JavaScript pour réduire le blocage du rendu de la page."

Je n'ai absolument aucune idée de ce que cela signifie. Quelqu'un pourrait-il m'en dire plus à ce sujet? (Je sais que ce n'est pas particulièrement lié à Wordpress, mais cela fait partie de l'accélération de toute façon, alors j'espère que vous êtes prêt à m'aider ici)

Un autre avertissement concernant Javascript:

The following external resources have small response bodies. Inlining the response in HTML can reduce blocking of page rendering.
http://zoomingjapan.com/travel/mount-koya-travel-report/ should inline the following small resources:
    http://zoomingjapan.com/wp-content/plugins/gravatar-box/gravbox.js?ver=1.0
    http://zoomingjapan.com/wp-content/plugins/jetpack/modules/wpgroho.js?ver=3.2.1
    http://zoomingjapan.com/wp-content/themes/alltuts/js/contact-form.js?ver=3.2.1
    http://zoomingjapan.com/wp-content/themes/alltuts/js/my-slider.js?ver=3.2.1
    http://zoomingjapan.com/wp-content/themes/alltuts/js/scrollable.js?ver=3.2.1
    http://zoomingjapan.com/wp-content/themes/alltuts/js/sliding_tabs.js?ver=3.2.1
    http://zoomingjapan.com/wp-content/themes/alltuts/js/sprinkle.js?ver=3.2.1
    http://zoomingjapan.com/wp-content/themes/alltuts/js/tab-renamer.js?ver=3.2.1
    http://zoomingjapan.com/wp-content/themes/alltuts/js/welcome_back.js?ver=3.2.1
    http://zoomingjapan.com/wp-includes/js/l10n.js?ver=20101110

Donc, il était recommandé de ne pas avoir d'appels de script dans vos fichiers de modèle, je les place TOUT dans un dossier js dans mon thème et c'est ce que vous obtenez. Des milliers de scripts minuscules. Bien sûr, j'utilise wp_enqueue_script! Est-ce que cela signifie qu'il est préférable de le remettre dans mon header.php? Ou créez un fichier custom.js et ajoutez tout le code qui peut éventuellement fonctionner ensemble?! Ou mettez tout le Javascript dans le footer.php?! Je ne comprends tout simplement pas quel serait le meilleur environnement pour WP ici!

Redirections:

Supprimez la chaîne de redirection suivante si possible:

http://0.gravatar.com/avatar/2b7d7f6b4622da443cc8081ca78db661...
http://zoomingjapan.com/wp-content/themes/alltuts/images/usericon.png?s=30

Supprimez la chaîne de redirection suivante si possible:

http://1.gravatar.com/avatar/35991606c4e61d2d3a4ba61a9e03ab79...
http://zoomingjapan.com/wp-content/themes/alltuts/images/usericon.png?s=30

Supprimez la chaîne de redirection suivante si possible:

http://www.zoomingjapan.com/wp-content/themes/proton-child/images/toplight.png
http://zoomingjapan.com/wp-content/themes/proton-child/images/toplight.png

Cela vient du code suivant dans mon function.php:

add_filter( 'avatar_defaults', 'newgravatar' );

function newgravatar ($avatar_defaults) {
$myavatar = get_bloginfo('template_directory') . '/images/usericon.png';
$avatar_defaults[$myavatar] = "ZoomingJapan";
return $avatar_defaults;
}

Puis-je me débarrasser de la redirection, tout en maintenant la fonction active?

Autres étapes:

  • Désactiver les révisions (terminé)

  • Vider la corbeille tous les 2 jours (fait)

  • Optimiser la dabatase une fois par semaine (pas encore)

  • Utiliser un plugin de cache (terminé: W3 Total Cache)

  • Rincer tôt (pas encore: <?php flush(); ?> pas sûr si c'est un bon
    idée à utiliser ??!)

  • Utilisez CloudFlare comme CDN (pas encore: que pensez-vous de cela? Ça marche bien avec WP?)

Avez-vous d'autres suggestions relativement faciles à mettre en œuvre?

Je sais, pas mal de questions, mais si vous pouviez me donner une petite suggestion pour l'un des points, je vous en serais très reconnaissant.

Merci beaucoup d'avance.

2
japanworm

Je me trouvais récemment dans une situation similaire et j'ai également commencé à utiliser W3 Total Cache.

Je ne suis pas sûr des paramètres que vous avez pour le moment, mais il vaut la peine d'essayer un peu si vous pouvez voir que vous utilisez vraiment W3 Total Cache au maximum.

Par exemple, au départ, je n'avais vérifié que les caches de page et de navigateur sur l'écran principal, mais je ne m'étais pas rendu dans les sections dédiées et je ne les avais pas optimisé non plus.

Mon conseil serait d’essayer d’activer différentes options (en cochant différentes cases) l’une après l’autre et d’avoir un aperçu des modifications, puis, une fois que vous avez effectué quelques ré-analyses,

Vous pouvez également essayer d'activer le paramètre Réduire dans W3 et d'expérimenter avec cela. Vous pouvez faire Auto ou si vous voulez vraiment aller en ville, choisissez le réglage manuel, puis sur la page dédiée Réduire, utilisez l’aide en haut pour détecter automatiquement le Javascript et les autres fichiers CSS que vous pouvez potentiellement minimiser (ne oublié de les ajouter également via la case à cocher appropriée), vous pouvez également choisir de retarder le chargement de ces fichiers dans certains cas, ce qui peut aider à résoudre vos problèmes d’analyse Javascript.

Faites très attention avec Minify et testez les modifications (sur plusieurs navigateurs après avoir effacé tous les caches), car il se peut que certains scripts n'aiment pas être minifiés ou n'acceptent pas d'être chargés plus tard dans la page (par exemple vous pourriez botter le chargement du CSS sur votre site)

Enfin, je recommanderais également d’essayer Cloudflare (bien que j’ai vu des résultats mitigés en termes de rapidité) ainsi qu’un CDN.

J'utilise MAXCDN qui me semble bon et pas cher et qui est bien intégré à W3, voici quelques informations supplémentaires à ce sujet:

http://www.wpbeginner.com/plugins/how-to-install-and-setup-w3-total-cache-for-beginners/

Je ne suis pas encore un expert en la matière, mais j'ai utilisé W3 Total Cache pour accélérer de manière significative un certain nombre de sites ces derniers jours. La clé consiste à expérimenter petit à petit et à tester, cela peut être un peu laborieux, mais si vous ' cherchez à tirer le meilleur parti de votre configuration WP, cela vaut la peine d'essayer

PS Essayez également d’installer le plug-in WP Smush It et de l’utiliser pour compresser toutes vos images PPS Toujours se faire dire, mais pour le répéter, désactivez tous les plug-ins que vous n'utilisez pas trop

J'espère que cela t'aides!

Grand amour

Entaille

2
Nick Davis

Vous devez équilibrer l'optimisation de la vitesse avec la réalité.

Cela signifie que l’analyse de la vitesse n’est pas une obsession, il ya une chose à considérer en termes de satisfaction des utilisateurs, du temps de chargement (dans la plupart des cas).

Testez votre page non mise en cache, puis en cache, vous devriez voir une différence notable dans la vitesse de chargement. Pour moi, votre site se charge en environ 2,5 secondes, ce qui est totalement acceptable compte tenu de vos images.

Si vous souhaitez accélérer les choses, les avantages les plus importants dans votre cas sont les suivants:

  • Les images à l'échelle du serveur, vous avez CSS (ou php je n'ai pas regardé) servant des images redimensionnées, utilisez plutôt les tailles d'images exactes en HTML.
  • Compressez davantage vos images en utilisant quelque chose comme WebP , (vous devrez ensuite les reconvertir dans photoshop).
  • Utiliser un cache de serveur comme varnish
  • Combinez votre javascript et optimisez-le

Vous commencez à vous rendre compte que l'optimisation au-delà d'un certain niveau représente beaucoup de travail. Dans certains cas, cela en vaut la peine, d'autres moins.

4
Wyck

Mes 2 centimes sans être un expert

  • optimisez votre thème. Recherchez des fonctions inutiles ou codez-les manuellement
  • vérifiez si vous avez besoin de tous vos plugins
  • utiliser des plugins de débogage pour vérifier les requêtes
  • déboguer avec Pingdom.com, blitz.io et google analytics (vitesse de la page)
  • utiliser le plugin de cache W3 avec autant que possible activé, cache, cdn, mimize, etc.
  • optimiser les images
  • essayer cdn
  • utiliser un bon hôte ou vps ou propre serveur
  • utiliser apc ou autre cache
  • essayez nginx au lieu d'Apache
1
Jens Wedin

Je suggérerais de faire fonctionner votre site via GTmetrix. Il existe également un plugin GTmetrix pour WordPress que vous pouvez utiliser pour surveiller l'efficacité de votre site.

Comme le dit Wyck, vous devriez vraiment servir des images à l’échelle. Si vous ne le faites pas, votre temps de chargement sera considérablement décalé.

Vous devez également spécifier les dimensions de l’image - toujours. Pour ce faire, utilisez les attributs height et width (plutôt que CSS) pour obtenir le résultat le plus rapide. Malheureusement, certains plugins et widgets tiers ne le font pas.

Vous devez également réduire et combiner les scripts dans la mesure du possible. Vous devez faire attention ici - plus avec JS qu'avec CSS - certains scripts ne jouant pas bien avec d'autres lorsqu'ils sont combinés. En outre, continuez à tester lorsque vous combinez. Parfois, la combinaison de plusieurs scripts peut augmenter votre temps de téléchargement, car vous téléchargez maintenant un fichier volumineux au lieu de quelques fichiers plus petits (pouvant être téléchargés simultanément). Utilisez W3TC pour cela.

Je ne voudrais pas m'inquiéter de reporter JavaScript. Ceci est fondamentalement ingérable dans WP, à cause des plugins, etc.

Vous ne pouvez rien faire à propos des redirections Gravatar, mais la troisième redirection que vous avez listée semble aller de www à un domaine non www (ou vice versa). Assurez-vous de toujours utiliser un domaine cohérent.

Vous appelez un jquery-comment-preview.css qui n’existe pas, c’est donc une perte de temps. En outre, vous appelez deux fichiers à partir de fileden - ceux-ci sont lents à se connecter. Essayez de ne pas faire de requêtes inutiles à différents domaines.

0
vancoder

JavaScript est analysé lors du chargement initial de la page. Différez l'analyse de JavaScript pour réduire le blocage du rendu de la page. J'ajoute ce code à mon functions.php cela a fonctionné pour moi.

function defer_parsing_of_js ( $url ) {
    if ( FALSE === strpos( $url, '.js' ) ) return $url;
    if ( strpos( $url, 'jquery.js' ) ) return $url;
    return "$url' async onload='myinit()";
}
add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );
0
mike

Cette question est à feuilles persistantes. Je pense qu'une des solutions pour accélérer WordPress consiste à évaluer la rapidité d'exécution de vos requêtes. Peut-être avez-vous un excellent hébergement, mais pour une raison quelconque, vous utilisez un plugin de sauvegarde, vos requêtes prennent quelques secondes à s'exécuter.

La solution pour cela serait la mise en cache des pages de disque. Cela nécessiterait de l'espace. De cette façon, lorsque les demandes sont envoyées, le plug-in de mise en cache transmet les demandes à lire sur un fichier de disque qui est rapide (sur des disques SSD).

Ainsi, dans les cas où votre site est vraiment statique, ou pour les parties de vos sites Web qui sont statiques, vous pouvez l'utiliser.

Je ne peux recommander aucun plugin comme celui-ci, j'ai écrit un plugin pour moi-même il y a 5 ans, appelé Acache, et je pourrais envisager de le publier un jour.

Vraiment c'était 20 lignes de code. Je ne sais pas pourquoi je ne l'utilise plus.

0
prosti