La mise en cache de la mémoire Memcached peut optimiser de nombreuses fonctions de WordPress et rendre votre WordPress plus rapide. La colonne suivante du Tutoriel WordPress présentera comment utiliser Memcached pour optimiser en profondeur WordPress.
Utilisez le cache mémoire pour optimiser l'efficacité des statistiques de navigation des articles WordPress.
Méthode de mise en cache des champs personnalisés par défaut de WordPress
Les plug-ins de statistiques de navigation d'articles généraux utilisent des champs personnalisés pour stocker des données si le serveur est activé avec la mémoire Memcached. cache, comment les données des champs personnalisés sont-elles mises en cache ? WordPress utilisera $post_id comme cache_key et 'post_meta' comme cache_group pour la mise en cache dans son ensemble.
Donc, mettre à jour un champ personnalisé équivaut à mettre à jour le cache de tous les champs personnalisés sous $post_id ensemble, et chaque fois que l'article est consulté, les données du champ personnalisé seront incrémentées de 1, de sorte qu'à chaque fois le cache des champs personnalisés sera mis à jour, ce qui entraînera trois requêtes SQL supplémentaires pour chaque page.
Utiliser le cache mémoire pour optimiser l'efficacité statistique de la navigation dans les articles
Existe-t-il un moyen de résoudre ce problème ? Nous pouvons d'abord mettre en cache les statistiques de navigation de l'article dans la mémoire, puis les écrire dans la base de données après avoir ajouté 10 vues à chaque fois. Cela peut réduire considérablement le nombre de requêtes SQL provoquées par les modifications des champs personnalisés dans les opérations WordPress.
Copiez le code ci-dessus dans le fichier function.php du thème actuel :
// 更新文章浏览数的时候,首先更新到内存中,然后每10次,才写到数据库中 add_filter('update_post_metadata', function($check, $post_id, $meta_key, $meta_value){ if($meta_key == 'views'){ if($meta_value % 10 != 0){ $check= true; wp_cache_set($post_id, $meta_value, 'views'); }else{ wp_cache_delete($post_id, 'views'); } } return $check; }, 1, 4); // 获取文章浏览数的时候,首先从内存中获取,没有才从数据库中获取 add_filter('get_post_metadata', function($pre, $post_id, $meta_key){ if($meta_key == 'views'){ $views= wp_cache_get($post_id, 'views'); if($views !== false){ return [$views]; } } return $pre; }, 1, 3);
Il peut aussi y avoir un petit problème : Comme le cache de Memcached n'est pas persistant, si vous cachez accidentellement le mémoire Si cette option est décochée, une partie du nombre de vues d'articles sera perdue, mais elle sera certainement inférieure à 10.
Le plug-in WPJAM Basic a intégré Memcached Après avoir téléchargé WPJAM Basic, copiez le fichier object-cache.php du répertoire wpjam-basic/template/ vers le répertoire wp-content.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!