要深度明白 WordPress 优化,必须要起首相识 WordPress 对象缓存 机制。
WordPress 对象缓存机制和服务器设置
WordPress Object Cache(WordPress 对象缓存)是 WordPress 的缓存机制,它的主要功用是把担任查询或许运算的效果根据 Key-Value 如许的体式格局(WordPress 还支撑根据 Group 来分别和防止缓存的内容争执)存储到对象内里,下次举行一样操纵的时刻,能够让直接从这个对象中掏出数据,不必反复到数据库中或许其他外部网站猎取数据。
WordPress Object Cache 和服务器设置关联很大,假如体系开启了 Memcached 内存缓存,则这个对象是直接存入到内存,在数据未逾期之前,今后再次读取这个数据都是直接从内存中读取的,如许效力和速率都异常快的。
假如服务器不支撑内存缓存的话,则只能保证在当前页面下一样的查询或许操纵不再反复从数据库中读取了。
WordPress 对象缓存的函数
运用 WordPress 对象缓存手艺实际上是异常简朴的:
运用 wp_cache_add() 把数据添加到缓存中。
运用 wp_cache_set() 把数据设置到缓存中。
运用 wp_cache_get() 到缓存中读取数据。
运用 wp_cache_delete() 删除缓存中的数据。
这些函数会涉及到的四个参数:
参数
$key 对象的 key。
$data 要存的值。
$group 分组,可选参数,用来把缓存对象就行分组。
$expire 逾期时候,可选参数,假如是默许缓存,这个参数没用,假如是内存缓存,是设置缓存的时候,单元是秒,默许为0(0的意义就是永久,不会自动逾期)。
运用 WordPress 对象缓存
下面以我行将更新 WordPress 相干文章插件为例,讲讲怎样运用 WordPress 对象缓存:
我们晓得 WordPress 相干文章插件是经由过程 tag 和分类来猎取相干文章,雷同的 tag 和分类越多,相干性越强,如许就须要举行多个表团结查询来猎取相干文章,如许效力实际上是比较差的。然则一个文章它的相干文章一段时候内是不会更改的,所以我们就能够运用 WordPress 对象缓存对相干文章举行加快。
下面是把把相干文章的数据写入缓存的例子,运用当前 post_id 作为 key,related_posts 作为 group,缓存时候为一个小时,即 3600 秒。
global $post; $related_posts_data = wp_get_related_posts(); wp_cache_set($post->ID,$related_posts_data,'related_posts',3600);
上面只是把数据存到缓存对象中,我们在显现相干文章的时刻,就要去挪用这个对象缓存来运用,起首搜检下是不是已有了缓存,假如你要的信息没有在缓存中,或许已逾期了。wp_cache_get() 会返回 false,假如如许,你就要去数据库中从新猎取这些信息。不然就返回在缓存中的信息。
global $post; $related_posts_data = wp_cache_get($post->ID,'related_posts'); if(false === $related_posts_data){ $related_posts_data = wp_get_related_posts(); wp_cache_set($post->ID,$related_posts_data,'related_posts',3600); } echo $related_posts_data;
由于设置了一个小时,相干文章的数据就失效,这里平常就无需更新缓存了,假如你在背景更改了设置,须要马上清算缓存,能够运用 wp_cache_delete 举行清算:
wp_cacache_delete($post->ID,'related_posts');
WPJAM Basic 插件已集成了 Memcached,下载 WPJAM Basic 以后,将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下即可。
以上就是WordPress 对象缓存(Object Cache)细致引见和运用的细致内容,更多请关注ki4网别的相干文章!