Précharger un cookie personnalisé

Dans certains cas, vous pouvez vouloir précharger le cache pour des valeurs spécifiques d' un cookie dynamique à la place de la version normale du cache.

Notez que le préchargement ignorera le préchargement de toutes les variantes si le cache est déjà généré par la visite d'un utilisateur.

Pour ce faire, vous pouvez utiliser le plugin d'aide suivant :

📥   Télecharger (.zip):  WP Rocket | Preload Dynamic Cookie Values

Développeurs•euses : vous trouverez le code de ce plugin sur GitHub.

📝 Une modification manuelle du code est nécessaire avant l'utilisation !!

  1. Après avoir téléchargé le fichier zip du plugin, décompressez-le et ouvrez le fichier PHP dans un éditeur de texte.
  2. Modifiez le nom du cookie et les valeurs que vous souhaitez précharger aux lignes 49 à 53.
  3. Si vous souhaitez précharger les valeurs de deux cookies différents, vous pouvez décommenter le deuxième ensemble dans l'aide (lang dans l'exemple) :
    $cookies = [
    	'currency' => [
    		'usd',
    		'eur',
    	],
    	'lang' => [
    		'en',
    		'es',
    	], 
    ];
    	

    L'exemple ci-dessus préchargera deux cookies :

    Cookie 1: currency avec les valeurs usd et eur
    Cookie 2: lang avec les valeurs en et es

  4. Après avoir effectué vos modifications, sauvegardez le fichier PHP et ré-zippez le plugin. 
  5. Dans votre site WordPress, allez à Extensions > Add New > Téléverser une extension et téléverser le fichier zip. 
  6. Activez-le et videz le cache de WP Rocket.

Dans ce cas, si la visite d'un utilisateur génère une page avec currency=usd et lang=en avant le préchargement, le préchargement ignorera toutes les autres variantes.

Précharger une seule valeur de cookie

Another option, to preload a single cookie value,  is to customize the following code snippet. Replace any instances of  cookie_name and cookie_value with the name and the value of the cookie you would like to preload.

Une autre option, pour précharger une seule valeur de cookie, consiste à personnaliser l'extrait de code suivant. Remplacez toutes les occurrences de cookie_name et cookie_value par le nom et la valeur du cookie que vous souhaitez précharger.

function custom_cookie_preload( $args ) {
	$cookie = new WP_Http_Cookie( 'cookie_name' );
	$cookie->name = 'cookie_name';
	$cookie->value = 'cookie_value';
	$cookies[] = $cookie;
	
	$args['cookies'] = $cookies;
	
	return $args;
}
add_filter( 'rocket_preload_url_request_args', 'custom_cookie_preload', PHP_INT_MAX );

Vous devez ajouter le code modifié au fichier functions.php de votre thème enfant ou utiliser un plugin d'extraits de code.

Référence : Ajouter des extraits de code

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.