Le plugin Autoptimize pour WordPress, est vraiment d’une grande utilité, pour améliorer les performances des site WordPress. Il permet de mettre en cache les fichiers css et javascripts, combiner les fichiers, réduire le code HTLM et plus encore …
Bref, le plugin est très bien, mais il y a un petit problème que vous pourriez rencontrer, la taille du cache peut rapidement devenir incontrôlable et cela peut devenir un énorme problème !!!
Heureusement il existe une solution de contournement asses simple à mettre en place.
Pour cela il faut éditer le fichier fonctions.php de votre thème et ajouter le code suivant:
1 2 3 4 5 6 7 8 9 10 11 12 |
# Limite automatiquement le cache à 512MB if (class_exists('autoptimizeCache')) { $myMaxSize = 512000; # You may change this value to lower like 100000 for 100MB if you have limited server space $statArr=autoptimizeCache::stats(); $cacheSize=round($statArr[1]/1024); if ($cacheSize>$myMaxSize){ autoptimizeCache::clearall(); header("Refresh:0"); # Refresh the page so that autoptimize can create new cache files and it does breaks the page after clearall. } } |
On peut aussi utiliser les tâches planifiées de WordPress pour effacer la cache tout les un fois par semaine ou par mois:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
<?php namespace wppress; class GarbageCollection { public function __construct() { add_filter('cron_schedules', function ($schedules) { $schedules['weekly'] = array( 'interval' => 604800, 'display' => __('Once a Week'), ); $schedules['monthly'] = array( 'interval' => 2635200, 'display' => __('Once a month'), ); return $schedules; }); if (!wp_next_scheduled('wppress/garbage/clear')) { wp_schedule_event(time(), 'monthly', 'wppress/garbage/clear'); } add_action('wppress/garbage/clear', [ &$this, 'clear']); } public function clear() { if (class_exists('autoptimizeCache')) { /* Efface le cache une fois par mois */ autoptimizeCache::clearall(); } } } new GarbageCollection(); ?> |
Voila j’espère que cela vous sera utile 🙂