新闻中心
WordPress性能优化设置头像缓存提高网站加载速度存
作者 / 无忧主机 时间 2013-01-27 00:28:42
大家也都知道缓存这个东西,可以很好的提高网站的速度,当访客在次访问网站的时候会直接调用缓存,wordpress网站缓存可以使用插件来实现,今天无忧主机(www.51php.com)小编给大家在介绍一个头像设置缓存的方法,开启评论的博客可以使用,特别是对那些使用Gravatar头像的用户,大大节省加载头像的时间,虽然一个头像的图片也不算大,但是如果每一页的评论显示多的情况下加载的时间也蛮多的。 首先使用FTP工具登录php虚拟主机在wp-content文件夹下建立一个avatar文件夹然后将下列的代码加入到当前使用主题的函数文件functions.php里。
function my_avatar( $email, $size = '32', $default = '', $alt = '') { $f = md5( strtolower( $email ) ); $a = WP_CONTENT_URL . '/avatar/'. $f . $size . '.png'; $e = WP_CONTENT_DIR . '/avatar/' . $f . $size . '.png'; $d = WP_CONTENT_DIR . '/avatar/' . $f . '-d.png'; if($default=='') $default = 'http://www.51php.com/default.jpg'; $t = 2592000; // 缓存有效期30天, 这里单位:秒 if ( !is_file($e) || (time() - filemtime($e)) > $t ) { if ( !is_file($d) || (time() - filemtime($e)) > $t ) { // 验证是否有头像 $uri = 'http://www.gravatar.com/avatar/' . $f . '?d=404'; $headers = @get_headers($uri); if (!preg_match("|200|", $headers[0])) { // 没有头像,则新建一个空白文件作为标记 $handle = fopen($d, 'w'); fclose($handle); $a = $default; } else { // 有头像且不存在则更新 $r = get_option('avatar_rating'); $g = 'http://www.gravatar.com/avatar/'. $f. '?s='. $size. '&r=' . $r; copy($g, $e); } } else { $a = $default; } } $avatar = "<img alt='{$alt}' src='{$a}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />"; return apply_filters('my_avatar', $avatar, $email, $size, $default, $alt); }代码的第7行修改成默认的头像地址,使用Gravatar头像的需要把functions.php里的
get_avatar( $comment修改成
my_avatar( $comment->comment_author_email修改完成后把函数文件functions.php保存上传回空间就可以开启头像缓存了,这段代码的缓存时间是30天如果觉得久可以在代码的第十行进行修改。 纯Linux环境下高端免备案【香港独立IP地址】 php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名
本文地址:https://www.51php.com/wordpress/10488.html






