iGoogler 优化教程(二):使用 WordPress Transients API

这个教程主要是方便和我一样使用 iGoogler 主题的人,能给自己的站点提一下速。因为一个效率优化做得那么好的主题,如果你还觉得速度慢,那真的是你不会使用了。

WordPress Transients API 简介

Transients 是瞬时的意思,WordPress 的 Transients API 就是 WordPress 用来存储一些缓存的数据到数据库中最简单也是最标准的方法,Transients API 给这些缓存的数据一个过期时间,并且时间到就会自动删除,所以如果你需要存储一些有生命周期的选项的时候,Transients API 就是最好的选择。

更让人感到欣喜的是,WordPress Transients API 不需要配合任何的服务器设置和插件。

使用 WordPress Transients API

下面我将以 iGoogler 主题的“最多评论的文章”为例,说一下如何使用 WordPress Transients API。

我们知道 “最多评论的文章”的获取需要进行大量的数据查询,大大降低了站点的效率。但是在短时间内,一个博客的“最多评论的文章”是不会变动的,所以我们就可以使用 WordPress Transients API 对“最多评论的文章”进行加速。

下面是把“相关文章”的数据写入缓存的例子,缓存时间为一天,即 86400 秒。

打开主题的 sidebar_r.php,将

<?php echo get_most_comments_posts_igoogler(5);?>

替换为

<?php
$most_comments_posts_data = get_transient('most_comments_posts');
if(false === $most_comments_posts_data){
	$most_comments_posts_data = get_most_comments_posts_igoogler(5);
	set_transient('most_comments_posts', $most_comments_posts_data, 86400);
}
echo $most_comments_posts_data;
?>

代码大意是:如果在缓存中找不到数据,就查询数据库,然后再将数据写入缓存,并设定过期时间为一天,即 86400 秒;如果找得到缓存,并且缓存没有过期,就直接使用缓存的数据。

由于我的博客较小,所以不需要太短的时间(在短时间内不会变动),如果你的博客较大,并且配上了其他缓存插件,你可以尝试使用“我爱水煮鱼”推荐的一个值——12 小时,即 43200 秒。

此文章是由nikbobo发表在旧博客分类目录的。将固定链接加入收藏夹。

关于 nikbobo

Nikbobo,本名刘永强,记忆空间站长,男,1998 年出生于广东茂名,至今(2020 年)21 岁,目前(2020 年)就读于广州大学华软软件学院,常以“nikbobo”这个网名混迹互联网。如无特殊注明,Nikbobo 在本站发表的文章,遵循 知识共享 署名-非商业性使用-相同方式共享 4.0 国际 许可协议。详情请参阅关于页面的作者介绍。

发表评论

您的电子邮箱地址不会被公开。