Préchargement du cache

L'option de préchargement du cache reproduit une visite des pages de votre site pour générer les fichiers de cache. Comme cette option est activée par défaut lors de l'installation du plugin, il n'est pas nécessaire d'attendre qu'un véritable visiteur accède aux pages avant de commencer à servir les fichiers de cache. Vos pages sont donc rapides dès la première visite.

Aperçu vidéo du préchargement

Par défaut, indépendamment de la situation de l'option Préchargement, WP Rocket préchargera automatiquement la page d'accueil à l'activation du plugin et après avoir enregistré les modifications. De plus, si l'option Créer un fichier de cache à part pour les mobiles est activée, la version mobile de la page d'accueil sera également préchargée.

Lorsque le préchargement sera actif, vous verrez la notification suivante : 

WP Rocket : Le préchargement est maintenant actif. Après le préchargement initial, il continuera à mettre en cache toutes vos pages chaque fois qu'elles seront purgées. Aucune autre action n'est nécessaire de votre part.

Le préchargement est un processus continu, lié aux purges du cache. Cela signifie que les pages seront préchargées chaque fois que leur cache a été vidé.

En même temps, toute URL qui a déjà un fichier de cache - son cache n'étant pas été vidé - sera ignorée, rendant le processus optimal.

En ce sens, WP Rocket peut déclencher un préchargement complet ou partiel après la suppression du cache, comme suit :

Préchargement complet

Le préchargement complet du cache sera exécuté sur les URL suivantes :

Et, le préchargement s'exécutera dans les scénarios suivants :

  • Lorsque vous enregistrez les modifications apportées aux réglages de WP Rocket qui ont une incidence sur le front-end (parce que le cache est effacé).
  • Lorsque vous cliquez sur le bouton Effacer et précharger le cache dans la barre d'outils d'administration, ou sur le tableau de bord de WP Rocket.
  • Chaque fois que la fonction rocket_clean_domain est appelée.

Préchargement partiel

Le préchargement partiel du cache prend effet lorsque WP Rocket vide automatiquement le cache pour les URL suivantes :

  • URLs publiées ou mises à jour, telles que les articles/pages/CPT.
    • Y compris tout autre contenu qui lui est lié (c'est-à-dire l'accueil, la catégorie, l'étiquette, etc.)
  • URLs dans l'option Toujours purger URL(s)
  • Pages purgées lorsque le Délai de nettoyage du cache expire.

Conditions nécessaires

Pour que le préchargement fonctionne comme prévu, les conditions suivantes doivent être remplies :

  • Cron : WP-Cron ou une véritable tâche cron côté serveur doit pouvoir s'exécuter, cette dernière étant fortement recommandée.
  • Votre site web et vos sitemaps doivent être accessibles publiquement.

    Le préchargement ne fonctionnera pas pour les utilisateurs connectés lorsque le cache utilisateur est activé, et il ne fonctionnera pas sur les sites inaccessibles au public en raison de plugins "mode maintenance" ou autres.

    Le préchargement peut fonctionner sur des sites avec une authentification par htaccess en suivant les instructions données ici.

Si les conditions de base ont été remplies et que le préchargement ne fonctionne toujours pas, vous pouvez vous référer aux sections suivantes de cet article.

Remarque : Consultez aussi l'article sur la compatibilité de l'hébergement pour voir si votre hébergeur utilise sa propre méthode de mise en cache des pages. Chez ces hébergeurs, le dossier de cache de WP Rocket sera toujours vide.

Comment vérifier si le préchargement fonctionne

Lorsqu'il est activé, le préchargement du cache créera les fichiers de cache. Afin de vérifier si le préchargement fonctionne, veuillez suivre les étapes suivantes :

  1. Accédez à votre installation de WordPress via (S)FTP un le gestionnaire de fichiers.
  2. Allez dans le dossier cache, à /wp-content/cache/wp-rocket/yourdomain.com/
  3. Cliquez sur "Purger le cache et précharger" dans la barre d'administration.
  4. Rafraîchissez le dossier, il devrait être vidé.
  5. Rafraîchissez une fois de plus, et les fichiers de cache devraient commencer à apparaître, dans leurs propres dossiers spécifiques aux articles. 

    Exemple:  /wp-content/cache/wp-rocket/yourdomain.com/product/index-https.html.

Quelle est la vitesse d'exécution prévue pour le Préchargement ?

Par défaut et dans des conditions idéales, la fonction de préchargement devrait mettre en cache 45 URL toutes les 60 secondes.

Les conditions idéales sont réunies lorsque :

  • Les appels Cron ont lieu toutes les 60 secondes
  • Les autres conditions de base sont remplies
  • Un nombre excessif d'autres tâches n'a pas d'impact sur la file d'attente des tâches programmées.
  • Les paramètres de préchargement ne sont pas modifiés pour accélérer ou ralentir le processus.

Sinon, dans les autres conditions, le Préchargement devrait gérer jusqu'à 45 URL à chaque fois qu'il y a un appel cron.

Si le préchargement est beaucoup plus lent, veuillez consulter cet article.

Préchargement lorsque la mise en cache de la page est désactivée

Même lorsque la mise en cache des pages est désactivée, l'activation du préchargement est utile pour déclencher les autres optimisations, notamment la minification des fichiers CSS, la suppression des CSS inutilisés, le report de l'exécution de JavaScript, etc. 

C'est le cas pour certains hébergeurs tels que Kinsta, WP Engine, DreamPress, Flywheel. Voir la liste complète des hébergeurs où la mise en cache des pages est désactivée dans cet article.

Préchargement des cookies et du cache utilisateur

Par défaut, le préchargement ne fonctionne pas pour le cache de l'utilisateur ou les fichiers de cache spécifiques aux cookies.

Pour les cookies, vous pouvez utiliser une fonction pour précharger la valeur d'un cookie à la place du cache ordinaire.

Préchargement basé sur les sitemaps des plugins SEO

Le préchargement de WP Rocket est automatiquement compatible avec les plugins de référencement les plus courants. Les URLs trouvées dans leurs sitemaps seront incluses dans le processus de préchargement. Voici la liste des plugins compatibles :

Si aucun des plugins ci-dessus n'est détecté, le préchargement fonctionnera sur la base du plan de site par défaut de WordPress.

Personnaliser les sitemaps de préchargement et leur priorité

Par défaut, le  Préchargement  :

  • Fonctionnera sur les URLs trouvées dans les sitemaps compatibles.
  • S'exécutera pour toutes les URLs en fonction de leur valeur modified dans la table wp_wpr_rocket_cache, la plus ancienne étant préchargée en premier.

    Étant donné que la valeur  modified change à chaque modification de page ou que de nouvelles pages sont publiées, l'ordre dans lequel les URL sont préchargés change constamment.

    Lorsqu'un post est modifié, il n'est pas préchargé en priorité par rapport à une file d'attente existante d'URL à précharger, mais le post modifié est renvoyé à la fin de la file d'attente.

Vous pouvez utiliser les filtres   rocket_sitemap_preload_list et rocket_preload_order afin de customiser le fonctionnement décritci-dessus. Pour plus de détails, veuillez consulter la documentation suivante : Personnaliser les sitemaps de préchargement et leur priorité.

Préchargement et cache mobile

Si vous avez activé l'option Créer un fichier de cache à part pour les mobiles, les fichiers de cache des appareils mobiles seront également générés par le préchargement en plus des fichiers de cache bureau.

Préchargement quand la Compatibilité WebP est activée

Si vous avez activé l'option de mise en cache WebP dans l'onglet Media, WP Rocket préchargera le fichier cache WebP au lieu du fichier cache non-WebP.

Comment exclure les URL du préchargement ?

Vous pouvez exclure des pages et des groupes de pages du préchargement, mais pas de la mise en cache, à l'aide du champ texte  URLs à exclure.

Vous trouverez plus de détails ici : Comment exclure des URLs du préchargement ? .

URLs automatiquement exclues du Préchargement

Le Préchargement est désactivé pour les pages paginées. Cela signifie que les URLs qui contiennent /page/, ou quelle que soit la base de pagination de WordPress, ne seront pas préchargées.

Pour clarifier les choses, les URL paginées peuvent toujours être mises en cache si elles sont visitées, mais elles ne seront pas ajoutées à la file d'attente de préchargement.

Si vous souhaitez modifier ce comportement et précharger les pages paginées, vous pouvez ajouter l'extrait de code suivant comme indiqué ici:

function enable_preload_for_pagination( $regexes ){
		global $wp_rewrite;
		$pagination_regex = "/$wp_rewrite->pagination_base/\d+";
		$exluded_urls = [		
			$pagination_regex,
		];
		$regexes = array_diff( $regexes, $exluded_urls);
		return $regexes;
	}
add_filter( 'rocket_preload_exclude_urls', 'enable_preload_for_pagination');

URLs exclus du Préchargement après un certain temps

Lorsqu'une URL n'a pas été consultée au cours des 30 derniers jours, WP Rocket l'exclut automatiquement de la file d'attente du préchargement.
Cela signifie que l'URL peut toujours être mise en cache, mais que WP Rocket ne l'inclura pas dans le processus de préchargement à moins qu'elle ne soit visitée à nouveau.
Pour modifier ce comportement, vous pouvez utiliser le filtre rocket_preload_delay_delete_non_accessed.

Par exemple, vous pouvez modifier l'intervalle de 1 mois à 1 an en ajoutant l'extrait suivant comme montré ici:

add_filter( 'rocket_preload_delay_delete_non_accessed', function( $interval ){
return '1 year';
} );

Arrêter le préchargement

Si vous devez arrêter le préchargement, désactivez l'option Préchargement. Le lot d'URL en cours de préchargmeent se terminera, puis il s'arrêtera complètement.

Infos techniques

  • Le préchargement utilise un processus en arrière-plan, limité à l'utilisation de 90% de la mémoire disponible de PHP.
  • Le processus complet repose sur WP-Cron ou un cron côté serveur, et sur Action Scheduler.
  • Le hook rocket_preload_job_parse_sitemap est utilisé pour détecter les sitemaps à précharger..
  • L'événement cron rocket_preload_process_pending vérifie le statut de préchargement des URLs. Il déclenchera le préchargement de 45 URL par minute.
    • L'événement d'action rocket_preload_job_preload_url suivra et traitera le statut de préchargement de chaque URL.
  • Le suivi de l'état des URL se fait dans la base de données, dans la table wp_wpr_rocket_cache.
  • L'événement cron rocket_preload_clean_rows_time_event est utilisé pour supprimer les anciennes lignes, sa fréquence est d'une fois par semaine.
  • Le préchargment fonctionne avec 2 user agents: WP Rocket/Preload , pour la version ordinateur de bureau, et Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1 pour les mobiles.

Résolutions de problème

Cela a-t-il répondu à votre question ? Merci pour votre retour :) Une erreur est survenue lors de l’envoi de votre retour. Veuillez réessayer plus tard.